libnvme(2)

✨ libnvme(2) β€” API Manual ✨

okay bestie, welcome to libnvme's corner of the manual page universe πŸ’… this is the API manual, and today we're hyperfixating on one lil enum. yes it's just constants. no it's not boring, it's giving infrastructure. let's get into it 🫢


πŸŽ€ NAME πŸŽ€

enum nvme_lm_track_send_fields β€” Track Send command fields

like. the actual name. the whole vibe of this page in one line. πŸ’–


🌸 SYNOPSIS 🌸

enum nvme_lm_track_send_fields {
    NVME_LM_TRACK_SEND_MOS_SHIFT ,
    NVME_LM_TRACK_SEND_MOS_MASK ,
    NVME_LM_TRACK_SEND_SEL_SHIFT ,
    NVME_LM_TRACK_SEND_SEL_MASK ,
    NVME_LM_SEL_LOG_USER_DATA_CHANGES ,
    NVME_LM_SEL_TRACK_MEMORY_CHANGES ,
    NVME_LM_LACT_SHIFT ,
    NVME_LM_LACT_MASK ,
    NVME_LM_LACT_STOP_LOGGING ,
    NVME_LM_LACT_START_LOGGING

};

ten members, zero drama, all of them exactly as written. don't you dare reorder them, the bit math will simply Not 🚫


πŸ‘‘ Constants πŸ‘‘

oke so here's the tea on every single one of these. no skips, no skimming, we read them all like the good little systems gremlins we are 🧚

  • NVME_LM_TRACK_SEND_MOS_SHIFT β€” the shift you use to set the Management Operation Specific (MOS) field ✨
  • NVME_LM_TRACK_SEND_MOS_MASK β€” the mask you use to set the MOS field 😌
  • NVME_LM_TRACK_SEND_SEL_SHIFT β€” the shift you use to set the Select (SEL) field πŸ’«
  • NVME_LM_TRACK_SEND_SEL_MASK β€” the mask you use to set the SEL field πŸ’…
  • NVME_LM_SEL_LOG_USER_DATA_CHANGES β€” the Log User Data Changes select option πŸ“
  • NVME_LM_SEL_TRACK_MEMORY_CHANGES β€” the Track Memory Changes select option πŸ¦‹
  • NVME_LM_LACT_SHIFT β€” the shift you use to set Logging Action (LACT) relative to MOS ⭐
  • NVME_LM_LACT_MASK β€” the mask you use to set LACT relative to MOS 🌈
  • NVME_LM_LACT_STOP_LOGGING β€” okay so the controller shall stop logging user data changes to namespaces attached to the controller associated with the User Data Migration Queue specified in the CDQ ID. like, stop stop. logging off. bye πŸ‘‹
  • NVME_LM_LACT_START_LOGGING β€” and this one? the controller shall start logging user data changes to namespaces attached to the controller associated with the User Data Migration Queue into that User Data Migration Queue β€” specifically where those user data changes are caused by the controller associated with that User Data Migration Queue processing commands. yes that's a lot of words, yes it's one sentence, no I will not be shortening it, the spec said what it said 😭πŸ”₯
fr fr: shall is doing a LOT of heavy lifting in those last two. that's not a suggestion, that's the controller's whole job now.

and that's the page bestie πŸ’– that was enum nvme_lm_track_send_fields, straight outta the libnvme(2) API Manual, dated July 2026. go forth and shift your bits responsibly. periodt πŸ‘‘βœ¨

πŸ“¦ where this page comes from