1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
|
What: /config/nvmet/ports/N/addr_adrfam
What: /config/nvmet/ports/N/addr_portid
What: /config/nvmet/ports/N/addr_traddr
What: /config/nvmet/ports/N/addr_trsvcid
What: /config/nvmet/ports/N/addr_trtype
What: /config/nvmet/ports/N/addr_treq
Date: June 2016
KernelVersion: 4.8
Contact: Christoph Hellwig <hch@lst.de>
Description:
Address attributes for an NVMe-oF target port.
addr_adrfam: Shows or sets the address family. Accepted
values: "pcie", "ipv4", "ipv6", "ib", "fc", "pci", "loop".
addr_portid: Shows or sets the port identifier (u16).
addr_traddr: Shows or sets the transport address string.
addr_trsvcid: Shows or sets the transport service identifier.
addr_trtype: Shows or sets the transport type. Accepted
values: "rdma", "fc", "tcp", "pci", "loop". Also
initializes default TSAS values.
addr_treq: Shows or sets the transport security requirements.
Accepted values: "not specified", "required",
"not required". For TCP with TLS1.3, "not specified" is
rejected.
All attributes require the port to be disabled before
modification.
What: /config/nvmet/ports/N/referrals/NAME/addr_adrfam
What: /config/nvmet/ports/N/referrals/NAME/addr_portid
What: /config/nvmet/ports/N/referrals/NAME/addr_traddr
What: /config/nvmet/ports/N/referrals/NAME/addr_trsvcid
What: /config/nvmet/ports/N/referrals/NAME/addr_trtype
What: /config/nvmet/ports/N/referrals/NAME/addr_treq
What: /config/nvmet/ports/N/referrals/NAME/enable
Date: June 2016
KernelVersion: 4.8
Contact: Christoph Hellwig <hch@lst.de>
Description:
Address attributes and enable control for a referral entry
under a port. The addr_* attributes have the same semantics
as the corresponding port-level attributes. The enable
attribute shows or sets whether this referral is enabled
(boolean).
What: /config/nvmet/ports/N/param_inline_data_size
Date: June 2018
KernelVersion: 4.19
Contact: Steve Wise <swise@opengridcomputing.com>
Description:
Shows or sets the inline data size for this port. Default
is -1 which lets the transport choose. The port must be
disabled before modification.
What: /config/nvmet/ports/N/ana_groups/ID/ana_state
Date: June 2018
KernelVersion: 4.19
Contact: Christoph Hellwig <hch@lst.de>
Description:
Shows or sets the ANA (Asymmetric Namespace Access) state
for this group on this port. Accepted values: "optimized",
"non-optimized", "inaccessible", "persistent-loss",
"change". Changes trigger an ANA change event.
What: /config/nvmet/ports/N/param_pi_enable
Date: May 2020
KernelVersion: 5.8
Contact: Israel Rukshin <israelr@mellanox.com>
Description:
Shows or sets whether protection information (PI) is
enabled/supported for this port. Accepts boolean value.
Only available when CONFIG_BLK_DEV_INTEGRITY is enabled.
The port must be disabled before modification.
What: /config/nvmet/ports/N/addr_tsas
Date: August 2023
KernelVersion: 6.7
Contact: Hannes Reinecke <hare@suse.de>
Description:
Shows or sets the transport-specific address subtype. For
TCP transport, accepted values: "none", "tls1.3" (requires
CONFIG_NVME_TARGET_TCP_TLS). For RDMA transport, shows the
QP type: "connected" or "datagram". The port must be
disabled before modification.
What: /config/nvmet/ports/N/param_max_queue_size
Date: January 2024
KernelVersion: 6.9
Contact: Max Gurtovoy <mgurtovoy@nvidia.com>
Description:
Shows or sets the maximum queue size for this port. Default
is -1 which lets the transport choose. The port must be
disabled before modification.
What: /config/nvmet/ports/N/param_mdts
Date: April 2026
KernelVersion: 7.1
Contact: Aurelien Aptel <aaptel@nvidia.com>
Description:
Shows or sets the maximum data transfer size for this port.
Default is -1 which lets the transport choose. The port
must be disabled before modification.
What: /config/nvmet/subsystems/NAME/attr_allow_any_host
Date: June 2016
KernelVersion: 4.8
Contact: Christoph Hellwig <hch@lst.de>
Description:
Shows or sets whether any host is allowed to connect.
Accepts boolean value. Cannot be set to 1 if explicit
hosts are linked in the allowed_hosts/ directory.
What: /config/nvmet/subsystems/NAME/namespaces/NSID/device_path
What: /config/nvmet/subsystems/NAME/namespaces/NSID/device_nguid
What: /config/nvmet/subsystems/NAME/namespaces/NSID/enable
Date: June 2016
KernelVersion: 4.8
Contact: Christoph Hellwig <hch@lst.de>
Description:
Namespace attributes added with the initial NVMe target.
device_path: Shows or sets the backend block device path.
The namespace must be disabled before modification.
device_nguid: Shows or sets the NGUID (128-bit identifier).
Accepts 32 hex digits with optional "-" or ":" separators.
The namespace must be disabled before modification.
enable: Shows or sets whether this namespace is enabled
(boolean).
What: /config/nvmet/subsystems/NAME/namespaces/NSID/device_uuid
Date: June 2017
KernelVersion: 4.13
Contact: Johannes Thumshirn <jthumshirn@suse.de>
Description:
Shows or sets the UUID for this namespace. The namespace
must be disabled before modification.
What: /config/nvmet/subsystems/NAME/attr_version
What: /config/nvmet/subsystems/NAME/attr_serial
Date: July 2017
KernelVersion: 4.13
Contact: Johannes Thumshirn <jthumshirn@suse.de>
Description:
attr_version: Shows or sets the NVMe version reported by
this subsystem. Format: "major.minor" or
"major.minor.tertiary". Cannot be changed after the
subsystem has been discovered.
attr_serial: Shows or sets the serial number. Must be a
1-20 byte ASCII string (characters 0x20-0x7e). Cannot be
changed after the subsystem has been discovered.
What: /config/nvmet/subsystems/NAME/namespaces/NSID/ana_grpid
Date: June 2018
KernelVersion: 4.19
Contact: Christoph Hellwig <hch@lst.de>
Description:
Shows or sets the ANA (Asymmetric Namespace Access) Group
ID for this namespace. Must be between 1 and 128. Changing
triggers an ANA event notification.
What: /config/nvmet/subsystems/NAME/namespaces/NSID/buffered_io
Date: June 2018
KernelVersion: 4.19
Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Description:
Shows or sets whether buffered I/O is used for this
namespace. Accepts boolean value. The namespace must be
disabled before modification.
What: /config/nvmet/subsystems/NAME/namespaces/NSID/p2pmem
Date: October 2018
KernelVersion: 4.20
Contact: Logan Gunthorpe <logang@deltatee.com>
Description:
Shows or sets the P2P DMA memory device for this namespace.
Accepts a PCI device BDF, "auto", or "none". The namespace
must be disabled before modification. Only available when
CONFIG_PCI_P2PDMA is enabled.
What: /config/nvmet/subsystems/NAME/attr_cntlid_min
What: /config/nvmet/subsystems/NAME/attr_cntlid_max
Date: January 2020
KernelVersion: 5.7
Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Description:
attr_cntlid_min: Shows or sets the minimum controller ID
(u16). Must be nonzero and not greater than attr_cntlid_max.
attr_cntlid_max: Shows or sets the maximum controller ID
(u16). Must be nonzero and not less than attr_cntlid_min.
What: /config/nvmet/subsystems/NAME/attr_model
Date: January 2020
KernelVersion: 5.7
Contact: Mark Ruijter <MRuijter@onestopsystems.com>
Description:
Shows or sets the model number for this subsystem. Must
be a 1-40 byte ASCII string (characters 0x20-0x7e).
Cannot be changed after the subsystem has been discovered.
What: /config/nvmet/subsystems/NAME/attr_pi_enable
Date: May 2020
KernelVersion: 5.8
Contact: Israel Rukshin <israelr@mellanox.com>
Description:
Shows or sets whether protection information (PI) is
enabled/supported for this subsystem. Accepts boolean
value. Only available when CONFIG_BLK_DEV_INTEGRITY is
enabled.
What: /config/nvmet/subsystems/NAME/namespaces/NSID/revalidate_size
Date: May 2020
KernelVersion: 5.8
Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Description:
Write-only. Writing 1 triggers namespace size revalidation.
If the size has changed, a namespace changed AEN is sent.
The namespace must be enabled.
What: /config/nvmet/subsystems/NAME/passthru/device_path
What: /config/nvmet/subsystems/NAME/passthru/enable
Date: July 2020
KernelVersion: 5.9
Contact: Logan Gunthorpe <logang@deltatee.com>
Description:
Passthrough mode attributes.
device_path: Shows or sets the NVMe controller character
device path (e.g., /dev/nvme0). Cannot be changed while
the passthrough controller is active.
enable: Shows or sets whether passthrough mode is enabled
(boolean).
Only available when CONFIG_NVME_TARGET_PASSTHRU is enabled.
What: /config/nvmet/subsystems/NAME/passthru/admin_timeout
What: /config/nvmet/subsystems/NAME/passthru/io_timeout
Date: November 2020
KernelVersion: 5.11
Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Description:
admin_timeout: Shows or sets the admin command timeout for
passthrough mode, in jiffies.
io_timeout: Shows or sets the I/O command timeout for
passthrough mode, in jiffies.
Only available when CONFIG_NVME_TARGET_PASSTHRU is enabled.
What: /config/nvmet/subsystems/NAME/passthru/clear_ids
Date: June 2022
KernelVersion: 5.19
Contact: Alan Adamson <alan.adamson@oracle.com>
Description:
Shows or sets whether to clear identify data IDs in
passthrough mode. Only available when
CONFIG_NVME_TARGET_PASSTHRU is enabled.
What: /config/nvmet/subsystems/NAME/attr_qid_max
Date: August 2022
KernelVersion: 6.1
Contact: Daniel Wagner <dwagner@suse.de>
Description:
Shows or sets the maximum queue ID (number of I/O queues,
u16). Must be between 1 and 128. Changing this value
forces reconnection of all connected controllers.
What: /config/nvmet/subsystems/NAME/attr_ieee_oui
Date: November 2022
KernelVersion: 6.2
Contact: Aleksandr Miloserdov <a.miloserdov@yadro.com>
Description:
Shows or sets the IEEE OUI for this subsystem. Displayed
in "0x%06x" format. Must be a 24-bit value. Cannot be
changed after the subsystem has been discovered.
What: /config/nvmet/subsystems/NAME/attr_firmware
Date: November 2022
KernelVersion: 6.2
Contact: Aleksandr Miloserdov <a.miloserdov@yadro.com>
Description:
Shows or sets the firmware revision string for this
subsystem. Must be a 1-8 byte ASCII string (characters
0x20-0x7e). Cannot be changed after the subsystem has
been discovered.
What: /config/nvmet/subsystems/NAME/namespaces/NSID/resv_enable
Date: November 2024
KernelVersion: 6.13
Contact: Guixin Liu <kanie@linux.alibaba.com>
Description:
Shows or sets whether persistent reservation support is
enabled for this namespace. Accepts boolean value. The
namespace must be disabled before modification.
What: /config/nvmet/subsystems/NAME/attr_vendor_id
What: /config/nvmet/subsystems/NAME/attr_subsys_vendor_id
Date: January 2025
KernelVersion: 6.14
Contact: Damien Le Moal <dlemoal@kernel.org>
Description:
attr_vendor_id: Shows or sets the PCI vendor ID reported
by this subsystem. Displayed in "0x%x" format.
attr_subsys_vendor_id: Shows or sets the PCI subsystem
vendor ID. Displayed in "0x%x" format.
What: /config/nvmet/hosts/HOSTNQN/dhchap_key
What: /config/nvmet/hosts/HOSTNQN/dhchap_ctrl_key
What: /config/nvmet/hosts/HOSTNQN/dhchap_hash
What: /config/nvmet/hosts/HOSTNQN/dhchap_dhgroup
Date: June 2022
KernelVersion: 6.0
Contact: Hannes Reinecke <hare@suse.de>
Description:
DH-HMAC-CHAP authentication attributes.
dhchap_key: Shows or sets the host secret key. Accepts a
key string in "DHHC-1:" format.
dhchap_ctrl_key: Shows or sets the controller secret key
for bidirectional authentication. Same format as dhchap_key.
dhchap_hash: Shows or sets the HMAC hash algorithm.
Accepted values: "hmac(sha256)", "hmac(sha384)",
"hmac(sha512)".
dhchap_dhgroup: Shows or sets the Diffie-Hellman group for
DH-HMAC-CHAP key exchange. Accepted values: "null",
"ffdhe2048", "ffdhe3072", "ffdhe4096", "ffdhe6144".
Non-null groups require the corresponding KPP crypto
algorithm to be available.
Only available when CONFIG_NVME_TARGET_AUTH is enabled.
What: /config/nvmet/discovery_nqn
Date: April 2024
KernelVersion: 6.9
Contact: Hannes Reinecke <hare@kernel.org>
Description:
Shows or sets the NQN of the discovery subsystem. The
value must be unique and not duplicate any existing
subsystem name.
|