NVME_IDENTIFY_NSID_CTRL_LIST(2)
π NAME π
nvme_identify_nsid_ctrl_list β bestie, this one grabs the list of controllers that are attached to an nsid π
β¨ SYNOPSIS β¨
int nvme_identify_nsid_ctrl_list (int fd , __u32 nsid , __u16 cntid ,
struct nvme_ctrl_list *cntlist );
π ARGUMENTS π
fdβ the file descriptor for your nvme device, okurrr π«Άnsidβ return the controllers that are attached to thisnsidβ¨cntidβ the startingCNTLIDto return in the list, like the first one you wanna see πcntlistβ user space destination address where the data gets transferred π¦
πΈ DESCRIPTION πΈ
So basically, you get up to 2047 controller identifiers back, and every single one of them has a controller identifier that's greater than or equal to the controller identifier you specified in cntid, and they're all attached to nsid. no cap π₯
And if you're wondering what the returned structure actually looks like, go check out struct nvme_ctrl_list for the definition. iykyk π
π RETURN π
It returns the nvme command status if a response was received β peep enum nvme_status_field for the deets β or -1. that's it, that's the tea π
mwah, ily, go read some more nvme manpages π§ this was the libnvme API manual, dated July 2026 β slay, periodt π
π¦ 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