STRUCT SDMA_MAP_ELEM(9)
π¦ struct sdma_map_elem(9) π¦
okay so we're in the Kernel API Manual bestie, and this page is about struct sdma_map_elem β literally the mapping situation for a vl, with a @mask selector mask and a @sde array of engines for this vl. periodt. π
β¨ NAME β¨
struct sdma_map_elem β the mapping for a vl. Real talk: @mask is the selector mask and @sde is the array of engines for this vl. that's the whole vibe π
πΈ SYNOPSIS πΈ
struct sdma_map_elem {
u32 mask;
struct sdma_engine *sde[];
};
two members, zero drama. the sde[] is a trailing array, which β iykyk β means it's flexible and it lives at the end. π
π«Ά Members π«Ά
okay so genuine moment: this heading is just... here. the original page leaves it empty and drops straight into Description. no members listed, no bullets, nothing. not me pointing it out but also yes me pointing it out π (the actual member info lives down in Description, keep reading bestie π)
π₯ Description π₯
so here's the tea: the mask is used to "mod" the selector to produce an index into the trailing array of sdes. that's it, that's the mechanic. you take your selector, you mod it by the mask, and boom β you've got your index into the array at the end. slay. β¨
literally the whole struct is just: mask does the math, trailing array does the holding. iconic division of labour. π§
π SEE ALSO π
- Kernel file
./drivers/infiniband/hw/hfi1/sdma.h sdma exported routines(9)sdma PSM/verbs API(9)Infrastructure calls(9)struct sdma_engine(9)sdma_empty(9)sdma_running(9)sdma_txinit_ahg(9)sdma_txinit(9)sdma_txadd_page(9)sdma_txadd_daddr(9)sdma_txadd_kvaddr(9)sdma_progress(9)sdma_engine_progress_schedule(9)
go read all of them, bestie, that's your homework π
π friendly reminder: everything above came straight from the page, so don't go inventing behaviour that isn't in it, fr fr.
and that's a wrap! π this little gem lives at ./drivers/infiniband/hw/hfi1 and the version stamped on it is October 2026. go off, read the source, drink some water. 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