1libnvme(9)                        API Manual                        libnvme(9)
2
3
4

NAME

6       struct nvme_passthru_cmd - nvme passthrough command structure
7

SYNOPSIS

9       struct nvme_passthru_cmd {
10           __u8 opcode;
11           __u8 flags;
12           __u16 rsvd1;
13           __u32 nsid;
14           __u32 cdw2;
15           __u32 cdw3;
16           __u64 metadata;
17           __u64 addr;
18           __u32 metadata_len;
19           __u32 data_len;
20           __u32 cdw10;
21           __u32 cdw11;
22           __u32 cdw12;
23           __u32 cdw13;
24           __u32 cdw14;
25           __u32 cdw15;
26           __u32 timeout_ms;
27           __u32 result;
28        };
29
30

Members

32       opcode      Operation  code, see enum nvme_io_opcodes and enum nvme_ad‐
33                   min_opcodes
34
35       flags       Not supported: intended for command flags (eg: SGL, FUSE)
36
37       rsvd1       Reserved for future use
38
39       nsid        Namespace Identifier, or Fabrics type
40
41       cdw2        Command Dword 2 (no spec defined use)
42
43       cdw3        Command Dword 3 (no spec defined use)
44
45       metadata    User space address to metadata buffer (NULL if not used)
46
47       addr        User space address to data buffer (NULL if not used)
48
49       metadata_len
50                   Metadata buffer transfer length
51
52       data_len    Data buffer transfer length
53
54       cdw10       Command Dword 10 (command specific)
55
56       cdw11       Command Dword 11 (command specific)
57
58       cdw12       Command Dword 12 (command specific)
59
60       cdw13       Command Dword 13 (command specific)
61
62       cdw14       Command Dword 14 (command specific)
63
64       cdw15       Command Dword 15 (command specific)
65
66       timeout_ms  If non-zero, overrides system default timeout in  millisec‐
67                   onds
68
69       result      Set  on  completion to the command's CQE DWORD 0 controller
70                   response
71
72
73
74April 2023                 struct nvme_passthru_cmd                 libnvme(9)
Impressum