NVME_MI_ADMIN_IDENTIFY_SECONDARY_CTRL_LIST(2)
π NAME π
nvme_mi_admin_identify_secondary_ctrl_list β bestie, this one does an Admin identify for a secondary controller list. That's it, that's the whole vibe. β¨
This page lives in the libnvme API manual, so you already know it's the good stuff.
πΈ SYNOPSIS πΈ
int nvme_mi_admin_identify_secondary_ctrl_list (nvme_mi_ctrl_t ctrl ,
__u16 cntid , struct nvme_secondary_ctrl_list *list );
okay so look at her. three little args and a dream. π«Ά
π ARGUMENTS π
ctrlβ the Controller you want to run this identify command on. that's her. that's the one.cntidβ the Controller ID that tells the list where to start. like "begin here bestie" πlistβ the list data we're gonna populate. it comes in empty and leaves full, main character energy honestly.
π¦ DESCRIPTION π¦
So what's actually happening: you're performing an Identify command, and it's for the secondary controllers that are associated with the current primary controller. Only the entries with IDs greater than or equal to cntid get returned β so if you only care about the second half of the squad, you can skip ahead. π
Now here's the part where you have to pay attention, because she's strict:
Will return an error if the length of the response data (from the controller) is not a full NVME_IDENTIFY_DATA_SIZE. so no partial vibes allowed. π
But the flip side is genuinely slay: list will be fully populated on success. like, no half-filled situationship. either it's all there or you get an error. periodt. π
See: struct nvme_secondary_ctrl_list β go read that one too, iykyk. π§
β RETURN β
0on success π- non-zero on failure π
that's the whole page, bestie β go populate a list, you got this. π
this was the libnvme API manual, nvme_mi_admin_identify_secondary_ctrl_list(2) section, dated July 2026. mwah, take care of her. ππ
π¦ 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