libnvme(2)
π libnvme(2) π
okay bestie, this one is from the libnvme API manual, and we're talking about struct nvme_id_ns_granularity_list β the Namespace Granularity List. yes it's a mouthful, yes it's iconic, let's get into it β¨
πΈ NAME πΈ
struct nvme_id_ns_granularity_list β Namespace Granularity List. that's it, that's the whole name, she's giving exactly what she says on the tin π
π SYNOPSIS π
no cap, this is the full struct, character for character, so don't be out here editing it:
struct nvme_id_ns_granularity_list {
__le32 attributes;
__u8 num_descriptors;
__u8 rsvd5[27];
struct nvme_id_ns_granularity_desc entry[NVME_ID_ND_DESCRIPTOR_MAX];
__u8 rsvd288[3808];
};
π¦ Members π¦
the way each member has a job and every single one of them is doing it π«Ά
attributesβ Namespace Granularity Attributes. this is where the attribute bits live, bestienum_descriptorsβ Number of Descriptors. literally just how many descriptors there are, she's self-explanatory and we love that for herrsvd5β reserved. do not touch, do not look at her, do not text her back πentryβ Namespace Granularity Descriptor. this is the array β<italic>entry</italic>[NVME_ID_ND_DESCRIPTOR_MAX], so she can hold up toNVME_ID_ND_DESCRIPTOR_MAXof them πrsvd288β reserved. also reserved. also not for you. periodt π
fr fr though: thersvd5[27]andrsvd288[3808]fields are reserved β that means hands off, no writing, no reading, no sneaky little "just one byte" moment. reserved is reserved π
okay that's the whole page, you ate it, no crumbs left. this was libnvme (the API manual, version vibes as of July 2026), and the struct on the cover was struct nvme_id_ns_granularity_list. go forth and be granular, my love ππβ¨
π¦ 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