1nvme_io_passthru(9)           libnvme API manual           nvme_io_passthru(9)
2
3
4

NAME

6       nvme_io_passthru - Submit an nvme io passthrough command
7

SYNOPSIS

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

ARGUMENTS

16       fd          File descriptor of nvme device
17
18       opcode      The nvme io command to send
19
20       flags       NVMe command flags (not used)
21
22       rsvd        Reserevd for future use
23
24       nsid        Namespace identifier
25
26       cdw2        Command dword 2
27
28       cdw3        Command dword 3
29
30       cdw10       Command dword 10
31
32       cdw11       Command dword 11
33
34       cdw12       Command dword 12
35
36       cdw13       Command dword 13
37
38       cdw14       Command dword 14
39
40       cdw15       Command dword 15
41
42       data_len    Length of the data transfered in this command in bytes
43
44       data        Pointer to user address of the data buffer
45
46       metadata_len
47                   Length of metadata transfered in this command
48
49       metadata    Pointer to user address of the metadata buffer
50
51       timeout_ms  How long the kernel waits for the command to complete
52
53       result      Optional field to return the result from the CQE dword 0
54

DESCRIPTION

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

RETURN

62       The nvme command status if a response was received (see enum  nvme_sta‐
63       tus_field) or -1 with errno set otherwise.
64
65
66
67April 2022                     nvme_io_passthru            nvme_io_passthru(9)
Impressum