libnvme(2)

πŸ’– NAME πŸ’–

ok so bestie, quick vibe check: struct nvme_id_ctrl_nvm is the I/O Command Set Specific Identify Controller data structure ✨ β€” yes that's a whole mouthful, but it's basically the lil info blob that tells you what an NVMe controller can do when you're looking at it through a specific I/O Command Set. Slay.

This is a page from the libnvme(2) API Manual, btw. We're deep in the API manual section, iykyk 🫢


🌸 SYNOPSIS 🌸

no cap, here's the struct in all its glory β€” copy it exactly, no edits, periodt:

struct nvme_id_ctrl_nvm {
    __u8 vsl;
    __u8 wzsl;
    __u8 wusl;
    __u8 dmrl;
    __le32 dmrsl;
    __le64 dmsl;
    __u8 kpiocap;
    __u8 wzdsl;
    __le16 aocs;
    __le32 ver;
    __u8 lbamqf;
    __u8 rsvd25[4071];
};

πŸ‘‘ Members πŸ‘‘

okay so every single field, one by one, no skips, we are thorough girlies here πŸ’…

  • vsl β€” Verify Size Limit. that's the cap on how big a Verify can be, bestie.
  • wzsl β€” Write Zeroes Size Limit. the limit for Write Zeroes operations.
  • wusl β€” Write Uncorrectable Size Limit. yep, the ceiling for Write Uncorrectable.
  • dmrl β€” Dataset Management Ranges Limit. how many ranges Dataset Management can handle at once.
  • dmrsl β€” Dataset Management Range Size Limit. how big each of those ranges can get.
  • dmsl β€” Dataset Management Size Limit. the overall Dataset Management size limit ✨
  • kpiocap β€” Key Per I/O Capabilities. the Key Per I/O tea β˜•
  • wzdsl β€” Write Zeroes With Deallocate Size Limit. size limit but for Write Zeroes with Deallocate, the deluxe version πŸ’…
  • aocs β€” Admin Optional Command Support. which optional admin commands are supported.
  • ver β€” Version. literally just the version, iconic behavior.
  • lbamqf β€” LBA Migration Queue Format. the LBA Migration Queue format field, and yes it's a mouthful.
  • rsvd25 β€” Reserved. it's reserved babes, do not touch πŸ™ˆ leave it alone, it's not for us.
fr fr: rsvd25 is Reserved β€” don't go writing your own little secrets in there, that's not the move.

and that's the whole page, main character struct energy only ✨

this was struct nvme_id_ctrl_nvm from the libnvme(2) API Manual, dated July 2026 β€” mwah, go forth and identify some controllers bestie, you're doing amazing sweetie πŸŽ€πŸ¦‹πŸ’œ

πŸ“¦ where this page comes from