nvme_init_compare(9)

πŸ“¦ version 3.2, in arch rolling

✨ nvme_init_compare πŸ’…

okay so bestie, welcome to the libnvme API manual β€” this one's page is nvme_init_compare(9) and it's lowkey a little glow-up for a passthru command buffer πŸŽ€


🌸 NAME 🌸

nvme_init_compare β€” literally initializes the passthru command for a user compare command, no cap 🫢


πŸ¦‹ SYNOPSIS πŸ¦‹

void nvme_init_compare (struct libnvme_passthru_cmd *cmd , __u32 nsid ,
__u64 slba , __u16 nlb , __u16 control , __u8 cev , void *data , __u32
data_len , void *metadata , __u32 metadata_len );

like, that's the whole signature, copying it exactly because we do not mess with the source ✨


πŸŽ€ ARGUMENTS πŸŽ€

  • cmd β€” the passthru command you're gonna use, she's the main character πŸ‘‘
  • nsid β€” Namespace ID, iykyk
  • slba β€” Starting logical block, the beginning of the vibe check
  • nlb β€” Number of logical blocks, and bestie listen: it's 0-based πŸ’€
  • control β€” Command control flags, see enum nvme_io_control_flags
  • cev β€” Command Extension Value (and heads up, CETYPE is non-zero here πŸ™ˆ)
  • data β€” Pointer to the user address of the data buffer
  • data_len β€” Length of the user buffer, data, in bytes πŸ“
  • metadata β€” Pointer to the user address of the metadata buffer
  • metadata_len β€” Length of the user buffer, metadata, in bytes

πŸ’œ DESCRIPTION πŸ’œ

So like β€” this function initializes the passthru command buffer for the Compare command. That's it, that's the whole thing, she's simple and she slays πŸ’…βœ¨


fr fr, don't sleep on the 0-based thing for nlb β€” that's the one detail that'll get you 😭

okay bye bestie, go forth and compare πŸ¦‹ this was the libnvme API manual, page nvme_init_compare(9), dated October 2026 β€” periodt πŸ’–

πŸ“¦ where this page comes from