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