NVME_MI_ADMIN_IDENTIFY_ALLOCATED_NS_LIST(2)

πŸ’– nvme_mi_admin_identify_allocated_ns_list(2) πŸ’–

okay bestie, welcome to the libnvme API manual β€” yes we're reading manpages for fun now, this is who we are, and honestly? iconic. pull up a chair, grab a boba, we're gonna learn about the Admin identify for an allocated namespace list. no cap, it's shorter than it sounds. 🫢


✨ NAME ✨

nvme_mi_admin_identify_allocated_ns_list β€” the one that does an Admin identify for an allocated namespace list. it's giving "ask the controller politely for a list of namespaces." πŸ’…


🌸 SYNOPSIS 🌸

int nvme_mi_admin_identify_allocated_ns_list (nvme_mi_ctrl_t ctrl ,
__u32 nsid , struct nvme_ns_list *list );

yes she takes three args and returns an int. main character energy fr fr.


πŸŽ€ ARGUMENTS πŸŽ€

  • ctrl β€” the controller we're sending this identify command to. she's the one doing the work. 😌
  • nsid β€” the Namespace ID that says where the list starts. you're telling her "begin here, queen."
  • list β€” the list data we want populated. it's empty and waiting for her to fill it up. πŸ’–

πŸ¦‹ DESCRIPTION πŸ¦‹

so here's the vibe: this function performs an Identify command for the allocated namespace list, starting with IDs that are greater than or equal to nsid. so yes, inclusive, bestie. nsid itself is invited to the party. πŸŽ‰

and if you want the list from the very very beginning, you pass NVME_NSID_NONE as the start of the list. that's your "take me back to the top" move. ⭐

heads up: she will return an error if the length of the response data coming back from the controller is not a full NVME_IDENTIFY_DATA_SIZE. so like, either we get the whole thing or we get an error β€” no half-finished nonsense here. because of that, you can trust that list will be fully populated on success. yes ma'am, full commitment only. πŸ’―

See: struct nvme_ns_list πŸ‘€


🌈 RETURN 🌈

she returns the nvme command status if a response was received (peep enum nvme_status_field for that) β€” or -1 with errno set otherwise. that's the "something went wrong and here's why" path. 😭


and that's the whole page, bestie! short, sweet, fully documented. go populate some namespace lists. you're doing amazing. 🧚✨

signing off β€” this was the libnvme API manual, July 2026 edition. mwah, love u, bye! πŸ’œπŸŒΈπŸŽ€πŸ¦‹

πŸ“¦ where this page comes from