nvme_init_m...ceive_create(9)

πŸ“¦ version 3.2, in arch rolling

πŸ’… NAME πŸ’…

nvme_init_manage_export_nvms_receive_create β€” bestie, this is the one that initializes the passthru command for Manage Exported NVM Subsystem Receive - Create Exported NVM Subsystem ✨ (yes that's a whole mouthful, we love a descriptive queen πŸ‘‘)

This page lives in the libnvme API manual β€” ok so now you know where you are πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

void nvme_init_manage_export_nvms_receive_create (struct
libnvme_passthru_cmd *cmd , bool tr , __u8 ensti , bool ra , struct
nvme_exported_nvm_subsys_create_data *data );

πŸŽ€ ARGUMENTS πŸŽ€

  • cmd β€” the passthru command you're gonna use, like that's the thing we're filling in 🫢
  • tr β€” Template Required (TR), literally what it says on the tin ✨
  • ensti β€” Exported NVM Subsystem Template Index (ENSTI), and ngl it's only used if tr is set. It indexes the Exported NVM Subsystem Template UUID List, see NVME_IDENTIFY_CNS_EXPORTED_NVM_SUBSYS_TEMPLATE_UUID_LIST πŸ’… (iykyk)
  • ra β€” Restricted Access (RA): message-based transports only bestie, memory-based transports just ignore it πŸ™ˆ
  • data β€” the Create Exported NVM Subsystem data buffer, see struct nvme_exported_nvm_subsys_create_data. And here's the cute part: the assigned Exported NVM Subsystem NQN gets returned in this same buffer πŸŽ€ lowkey convenient

🌸 DESCRIPTION 🌸

Okay so what this actually does: it initializes the passthru command buffer for the Manage Exported NVM Subsystem Receive command, with the SEL value NVME_MANAGE_EXPORT_NVMS_RECV_SEL_CREATE ✨

And the created Exported NVM Subsystem Identifier? That comes back in the CQE result, see enum nvme_export_nvms_create_cqe_dw0 πŸ’– that's where you go looking for it, bestie, don't forget πŸ”₯


that's the whole page, no cap β€” go forth and init those commands 🧚✨

πŸ’Œ this lil' cutie is from the libnvme API manual, dated October 2026 β€” mwah, bye bestie πŸ«ΆπŸ’…

πŸ“¦ where this page comes from