nvme_mi_adm...tive_ns_list(2)

πŸ’– NAME πŸ’–

nvme_mi_admin_identify_active_ns_list β€” bestie, this one does an Admin identify for an active namespace list ✨

(also hi, you're reading the libnvme API manual, welcome to the group chat 🫢)


✨ SYNOPSIS ✨

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

okay so that's the whole vibe right there, no notes πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • ctrl β€” the Controller we're handing this identify command to. like, this is who's doing the work πŸ’ͺ
  • nsid β€” the Namespace ID, and it's the one that says where the list starts. Not where it ends, where it starts, okay? πŸ“
  • list β€” the list data we're populating. it's empty rn and we're about to fill it up, glow-up incoming 🌸

🌈 DESCRIPTION 🌈

So we're performing an Identify command, specifically for the active namespace list β€” and it starts with IDs that are greater than or equal to nsid πŸ¦‹

If you want the literal start of the list? Pass NVME_NSID_NONE for nsid. That's the move, bestie, do not skip that πŸ“Œ

Now the part that's giving ✨trust issues✨ if you don't read it:

It will return an error if the length of the response data (from the controller) is not a full NVME_IDENTIFY_DATA_SIZE. But the slay here is that on success, list will be fully populated. no half-finished vibes, we don't do that πŸ’€

See: struct nvme_ns_list πŸ‘€


πŸ‘‘ RETURN πŸ‘‘

  • The nvme command status if a response was received β€” go peek at enum nvme_status_field for the deets, iykyk
  • or -1 with errno set, in literally every other case πŸ™ˆ

πŸ’œ SEE ALSO πŸ’œ

girl. it's the same function, there's no other page here 😭 this one's a solo main character


okay that's the whole page, periodt πŸŽ€ this was the libnvme API manual, dated July 2026 β€” mwah, go populate your namespace list, you're gonna ate πŸ’…βœ¨πŸ¦‹

πŸ“¦ where this page comes from