nvme_init_dsm_range(2)
π NAME π
nvme_init_dsm_range β bestie, this one constructs a data set range structure for you β¨
πΈ SYNOPSIS πΈ
void nvme_init_dsm_range (struct nvme_dsm_range *dsm , __u32 *ctx_attrs
, __u32 *llbas , __u64 *slbas , __u16 nr_ranges );
π ARGUMENTS π
dsmβ the DSM range array itself, the main character of this whole operation πctx_attrsβ an array of context attributes π¦llbasβ an array of lengths, measured in logical blocks πslbasβ an array of starting logical blocks, like where each range begins πnr_rangesβ the size of thedsmarrays, aka how many ranges we're working with π’
β¨ DESCRIPTION β¨
okay so every single one of those arrays has to be the same size β that size being nr_ranges. like, all of them, no exceptions, the vibe check is that they match π
and literally the whole point of this function? it's intended to be used with constructing a payload for nvme_dsm. that's the assignment. that's the job. periodt π«Ά
π RETURN π
It hands you back the nvme command status if a response came through β or -errno otherwise π
ngl that's the whole page, bestie β go forth and construct those data set range structures, you've got this π§π
This was nvme_init_dsm_range from the libnvme API manual, dated July 2026. slay, bye!! πβ¨π
π¦ where this page comes from
- ubuntu stonking: libnvme-dev 1.16.2-1build1 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms