NAME

nvme_io_passthru - Submit an nvme io passthrough command

SYNOPSIS

int nvme_io_passthru (int fd , __u8 opcode , __u8 flags , __u16 rsvd , __u32 nsid , __u32 cdw2 , __u32 cdw3 , __u32 cdw10 , __u32 cdw11 , __u32 cdw12 , __u32 cdw13 , __u32 cdw14 , __u32 cdw15 , __u32 data_len , void *data , __u32 metadata_len , void *metadata , __u32 timeout_ms , __u32 *result );

ARGUMENTS

fd
File descriptor of nvme device
opcode
The nvme io command to send
flags
NVMe command flags (not used)
rsvd
Reserved for future use
nsid
Namespace identifier
cdw2
Command dword 2
cdw3
Command dword 3
cdw10
Command dword 10
cdw11
Command dword 11
cdw12
Command dword 12
cdw13
Command dword 13
cdw14
Command dword 14
cdw15
Command dword 15
data_len
Length of the data transferred in this command in bytes
data
Pointer to user address of the data buffer
metadata_len
Length of metadata transferred in this command
metadata
Pointer to user address of the metadata buffer
timeout_ms
How long the kernel waits for the command to complete
result
Optional field to return the result from the CQE dword 0

DESCRIPTION

Parameterized form of nvme_submit_io_passthru. This sets up and submits a struct nvme_passthru_cmd.
 
Known values for opcode are defined in enum nvme_io_opcode.

RETURN

The nvme command status if a response was received (see enum nvme_status_field) or -1 with errno set otherwise.

Questions & Answers

Helpful answers and articles about nvme_io_passthru you may found on these sites:
Stack Overflow Server Fault Super User Unix & Linux Ask Ubuntu Network Engineering DevOps Raspberry Pi Webmasters Google Search