xas_set(9)
π xas_set(9) β aka the Kernel API Manual's cutest little index-switcher π
okay so bestie, buckle up, because this is xas_set(9) from the Kernel API Manual, and honestly? it's giving "tiny function, big main character energy" β¨
πΈ NAME πΈ
xas_set β Set up XArray operation state for a different index. literally that's it, that's the whole job π
β SYNOPSIS β
void xas_set (struct xa_state *xas , unsigned long index );
no cap, that's the whole signature. two arguments. in, out, slay. π
π¦ ARGUMENTS π¦
xasβ the XArray operation state π«Ά like, this is the little state buddy you're moving around.indexβ the new index into the XArray β¨ the fresh new spot you're pointing at.
π₯ DESCRIPTION π₯
Move the operation state to refer to a different index. that's the vibe β xas gets repositioned to wherever index says, periodt π
be aware bestie: this will have the effect of starting a walk from the top π§ so it's not a sneaky little nudge to the next-door neighbor. if adjacent-index energy is what you want, see xas_next β that's the one that moves you to an adjacent index π«
lowkey important:xas_set= jump to a whole new index and restart the walk from the top.xas_next= slide over to the adjacent index. don't mix them up, iykyk π
π SEE ALSO π
kernel file ./include/linux/xarray.h β and okay the friend group here is huge, so let's do a roll call π
xa_mk_value(9),xa_to_value(9),xa_is_value(9),xa_tag_pointer(9),xa_untag_pointer(9),xa_pointer_tag(9),xa_is_zero(9),xa_is_err(9),xa_err(9)struct xa_limit(9),struct xarray(9)DEFINE_XARRAY_FLAGS(9),DEFINE_XARRAY(9),DEFINE_XARRAY_ALLOC(9),DEFINE_XARRAY_ALLOC1(9)xa_init_flags(9),xa_init(9),xa_empty(9),xa_marked(9)xa_for_each_range(9),xa_for_each_start(9),xa_for_each(9),xa_for_each_marked(9)xa_store_bh(9),xa_store_irq(9),xa_erase_bh(9),xa_erase_irq(9)xa_cmpxchg(9),xa_cmpxchg_bh(9),xa_cmpxchg_irq(9)xa_insert(9),xa_insert_bh(9),xa_insert_irq(9)xa_alloc(9),xa_alloc_bh(9),xa_alloc_irq(9)xa_alloc_cyclic(9),xa_alloc_cyclic_bh(9),xa_alloc_cyclic_irq(9)xa_reserve(9),xa_reserve_bh(9),xa_reserve_irq(9),xa_release(9)xa_is_sibling(9),xa_is_retry(9),xa_is_advanced(9)xa_update_node_t(9)XA_STATE(9),XA_STATE_ORDER(9)xas_error(9),xas_set_err(9),xas_invalid(9),xas_valid(9),xas_is_node(9),xas_reset(9),xas_retry(9),xas_reload(9),xas_advance(9),xas_set_order(9),xas_set_update(9)xas_next_entry(9),xas_next_marked(9)xas_for_each(9),xas_for_each_marked(9),xas_for_each_conflict(9)xas_prev(9),xas_next(9)
like i said. huge friend group. all iconic, all worth a read π
and that's the whole page bestie!! π sourced straight from ./include/linux, dated October 2026 β mwah, go forth and set those indices πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms