xa_store_bh(9)
β¨ xa_store_bh(9) β¨
okay so bestie, this is a page from the Kernel API Manual for xa_store_bh(9) β yes the (9) is giving kernel-API energy π
. Let's get into it, no cap.
π NAME π
xa_store_bh β Store this entry in the XArray. π
πΈ SYNOPSIS πΈ
void * xa_store_bh (struct xarray *xa , unsigned long index , void *entry , gfp_t gfp );
π¦ ARGUMENTS π¦
xaβ XArray. The main character array itself π.indexβ Index into array. Where you're pointing, bestie π.entryβ New entry. The new thing you're putting there β¨.gfpβ Memory allocation flags. The allocation vibe check flags π§.
π DESCRIPTION π
okay so this function is like calling xa_store except it disables softirqs while holding the array lock. That's the whole little plot twist π₯. It's giving "store, but make it softirq-safe" β¨.
π₯ CONTEXT π₯
Any context. It takes and releases the xa_lock while disabling softirqs π«Ά.
π RETURN π
The old entry at this index or xa_err if an error happened. So you get the previous occupant, or an error situation β iconic either way πβ¨.
π SEE ALSO π
Kernel file ./include/linux/xarray.h β plus the whole extended fam, fr fr:
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_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_set(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)
okay bestie, that's the whole page π source/version: ./include/linux Β· date: October 2026 Β· mwah πβ¨
π¦ 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