libnvme(9)
π¦ libnvme(9) β the libnvme API manual, bestie edition π¦
okay so this page lives in the libnvme API manual, and it's here to explain one very specific little enum, so let's get into it π
β¨ NAME β¨
enum nvme_host_addressable_ns_mat β the Addressable Namespaces Data Structure, specifically the Memory Access Type (MAT) part πΈ
Like, that's it. That's the whole vibe. It's a bundle of shift amounts and masks, and it's giving "small but crucial" energy, fr fr.
β¨ SYNOPSIS β¨
enum nvme_host_addressable_ns_mat {
NVME_HOST_ADDRESSABLE_NS_MAT_BARA_SHIFT ,
NVME_HOST_ADDRESSABLE_NS_MAT_BARA_MASK ,
NVME_HOST_ADDRESSABLE_NS_MAT_CXLA_SHIFT ,
NVME_HOST_ADDRESSABLE_NS_MAT_CXLA_MASK
};
no cap, that's the entire enum. four constants, zero drama π
β¨ Constants β¨
okay bestie, here's the breakdown of every single one of them, no skips, no "you can figure out the rest" π
NVME_HOST_ADDRESSABLE_NS_MAT_BARA_SHIFTβ the shift amount you use to get BAR Access (BARA) π₯NVME_HOST_ADDRESSABLE_NS_MAT_BARA_MASKβ the mask that gets you BARA β¨NVME_HOST_ADDRESSABLE_NS_MAT_CXLA_SHIFTβ the shift amount you use to get CXL Access (CXLA) πNVME_HOST_ADDRESSABLE_NS_MAT_CXLA_MASKβ the mask that gets you CXLA π«Ά
two shifts, two masks. shift first, then mask. that's the little ritual, iykyk π
and that's the whole page, bestie β genuinely iconic of the libnvme crew to document their shifts and masks so cleanly π
this was the libnvme(9) page from the API Manual, dated October 2026 β mwah, sending you off with a π and a β, go mask some bits responsibly π
π¦ where this page comes from
- arch rolling: nvme-cli 3.2-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms