libnvme(2)

✨ NAME ✨

struct nvme_zns_id_ns β€” the Zoned Namespace Command Set Specific Identify Namespace Data Structure, bestie πŸ’–

Like, this is the whole vibe of a zoned namespace when you ask it to identify itself. It's in libnvme, manual section 2, and yes she is iconic.


πŸ¦‹ SYNOPSIS πŸ¦‹

struct nvme_zns_id_ns {
    __le16 zoc;
    __le16 ozcs;
    __le32 mar;
    __le32 mor;
    __le32 rrl;
    __le32 frl;
    __le32 rrl1;
    __le32 rrl2;
    __le32 rrl3;
    __le32 frl1;
    __le32 frl2;
    __le32 frl3;
    __le32 numzrwa;
    __le16 zrwafg;
    __le16 zrwasz;
    __u8 zrwacap;
    __u8 rsvd53[2763];
    struct nvme_zns_lbafe   lbafe[64];
    __u8 vs[256];
 };

πŸ’… Members πŸ’…

okay so every field, no skips, no gatekeeping 🫢

  • zoc β€” Zone Operation Characteristics
  • ozcs β€” Optional Zoned Command Support
  • mar β€” Maximum Active Resources
  • mor β€” Maximum Open Resources
  • rrl β€” Reset Recommended Limit
  • frl β€” Finish Recommended Limit
  • rrl1 β€” Reset Recommended Limit 1
  • rrl2 β€” Reset Recommended Limit 2
  • rrl3 β€” Reset Recommended Limit 3
  • frl1 β€” Finish Recommended Limit 1
  • frl2 β€” Finish Recommended Limit 2
  • frl3 β€” Finish Recommended Limit 3
  • numzrwa β€” Number of ZRWA Resources
  • zrwafg β€” ZRWA Flush Granularity
  • zrwasz β€” ZRWA Size
  • zrwacap β€” ZRWA Capability
  • rsvd53 β€” Reserved πŸ™ˆ (she's just sitting there, minding her business, don't touch)
  • lbafe β€” LBA Format Extension, and it's an array: lbafe[64] πŸŽ€
  • vs β€” Vendor Specific, also an array: vs[256] ✨
lowkey reminder: rsvd53 is literally declared as __u8 rsvd53[2763]; and it's Reserved, so hands off, babe πŸ’€

and that's the whole struct, ate and left no crumbs πŸ‘‘

sign-off time πŸ’– this lil cutie lives in the libnvme API manual, page struct nvme_zns_id_ns, section libnvme(2), dated July 2026 🌸 k byeeee πŸ¦‹

πŸ“¦ where this page comes from