1nvme_admin_passthru(9) libnvme API manual nvme_admin_passthru(9)
2
3
4
6 nvme_admin_passthru - Submit an nvme passthrough command
7
9 int nvme_admin_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
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 Reserved 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 transferred in this command in bytes
43
44 data Pointer to user address of the data buffer
45
46 metadata_len
47 Length of metadata transferred 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
56 Parameterized form of nvme_submit_admin_passthru. This sets up and sub‐
57 mits a struct nvme_passthru_cmd.
58
59 Known values for opcode are defined in enum nvme_admin_opcode.
60
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
67October 2023 nvme_admin_passthru nvme_admin_passthru(9)