libnvme(2)

πŸ’… libnvme, section 2 β€” API Manual (yes bestie, we're in the libnvme(2) girlies) πŸ’…

okay so. sit down. hydrate. we're reading a struct definition together and honestly? it's giving organized. it's giving spec-compliant. πŸ¦‹


✨ NAME ✨

struct nbft_ssns_ext_info β€” Subsystem and Namespace Extended Information Descriptor (Figure 19) πŸŽ€

like. it's a descriptor. it holds the extended info. that's the whole vibe.


🫢 SYNOPSIS 🫢

struct nbft_ssns_ext_info {
    __u8 structure_id;
    __u8 version;
    __le16 ssns_index;
    __le32 flags;
    __le16 cntlid;
    __le16 asqsz;
    struct nbft_heap_obj dhcp_root_path_str_obj;
};

look at her. seven fields. not one more, not one less. iconic behavior. ✨


🌸 Members 🌸

πŸ’– structure_id

Structure ID: this one shall be set to 9h β€” that's SSNS Extended Info, a.k.a. #NBFT_DESC_SSNS_EXT_INFO. no cap, it's literally the field that tells everyone who she is. πŸ‘‘

🧚 version

Version: this field shall be set to 1h. one. uno. that's it. that's the number. πŸ’…

πŸ”₯ ssns_index

SSNS Descriptor Index: this field indicates the value of the SSNS Descriptor Index field of the Subsystem and Namespace Descriptor (peep struct nbft_ssns) whose SSNS Extended Information Descriptor Heap Object Reference field indicates this descriptor. yes, it's a whole chain of pointing at each other, and yes, it fully slays. 🫢

🌈 flags

Flags β€” go look at enum nbft_ssns_ext_info_flags for the deets. iykyk. ⭐

πŸ‘‘ cntlid

Controller ID: the controller identifier of the first controller associated with the Admin Queue by the driver. and listen β€” if a controller identifier is not administratively specified, or direct configuration is not supported by the driver, then this field shall be cleared to 0h. so it's a zero. dramatic but correct. πŸ’€

πŸ“ asqsz

Admin Submission Queue Size (ASQSZ): the Admin Submission Queue Size utilized for the respective SSNS by the driver. it's the size. it's utilized. we move. ✨

πŸ¦‹ dhcp_root_path_str_obj

DHCP Root Path String Heap Object Reference: okay so if the SSNS DHCP Root Path Override flag bit (#NBFT_SSNS_DHCP_ROOT_PATH_OVERRIDE) is set to 1h, then this field indicates the offset in bytes of a heap object containing an DHCP Root Path String used by the driver.

and if the SNSS DHCP Root Path Override flag bit is cleared to 0h? then this field is reserved. not for you. not today. reserved. πŸ™ˆ

note bestie: the original text really does say SNSS in that second sentence and SSNS in the first one. i am not fixing it. i am not touching it. it's not my business. i'm just the messenger. 😭

⭐ SEE ALSO ⭐

nothing else listed in this one, bestie. she stands alone. main character energy fr fr. πŸ’œ


that's the whole page, and honestly? ate. πŸ’–

this was libnvme(2), the API Manual, page for struct nbft_ssns_ext_info, dated July 2026. go forth and set your structure_id to 9h. periodt. 🌸🫢✨

πŸ“¦ where this page comes from