.TH "nvme_init_write" 2 "nvme_init_write" "October 2026" "libnvme API manual" LINUX
.SH NAME
nvme_init_write \- Initialize passthru command for a user write command
.SH SYNOPSIS
.B "void" nvme_init_write
.BI "(struct libnvme_passthru_cmd *cmd "  ","
.BI "__u32 nsid "  ","
.BI "__u64 slba "  ","
.BI "__u16 nlb "  ","
.BI "__u16 control "  ","
.BI "__u16 dspec "  ","
.BI "__u8 dsm "  ","
.BI "__u8 cev "  ","
.BI "void *data "  ","
.BI "__u32 data_len "  ","
.BI "void *metadata "  ","
.BI "__u32 metadata_len "  ");"
.SH ARGUMENTS
.IP "cmd" 12
Passthru command to use
.IP "nsid" 12
Namespace ID
.IP "slba" 12
Starting logical block
.IP "nlb" 12
Number of logical blocks (0-based)
.IP "control" 12
Upper 16 bits of cdw12
.IP "dspec" 12
Directive specific value
.IP "dsm" 12
Data set management attributes (CETYPE is zero),
see \fIenum nvme_io_dsm_flags\fP
.IP "cev" 12
Command Extension Value (CETYPE is non-zero)
.IP "data" 12
Pointer to user address of the data buffer
.IP "data_len" 12
Length of user buffer, \fIdata\fP, in bytes
.IP "metadata" 12
Pointer to user address of the metadata buffer
.IP "metadata_len" 12
Length of user buffer, \fImetadata\fP, in bytes
.SH "DESCRIPTION"
Initializes the passthru command buffer for the Write command.
