summaryrefslogtreecommitdiffstats
path: root/Documentation/nvme-create-ns.txt
blob: 352a94524e446ab33570742be641cb589b4ed8eb (plain)
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
nvme-create-ns(1)
=================

NAME
----
nvme-create-ns - Send NVMe Namespace management command to create namespace, returns results.

SYNOPSIS
--------
[verse]
'nvme create-ns' <device> [--nsze=<nsze> | -s <nsze>]
			[--ncap=<ncap> | -c <ncap>]
			[--flbas=<flbas> | -f <flbas>]
			[--dps=<dps> | -d <dps>]
			[--nmic=<nmic> | -m <nmic>]
			[--anagrp-id=<anagrpid> | -a <anagrpid>]
			[--nvmset-id=<nvmsetid> | -i <nvmsetid>]
			[--endg-id=<endgid> | -e <endgid>]
			[--csi=<command_set_identifier> | -y <command_set_identifier>]
			[--lbstm=<lbstm> | -l <lbstm>]
			[--nphndls=<nphndls> | -n <nphndls>]
			[--block-size=<block-size> | -b <block-size>]
			[--timeout=<timeout> | -t <timeout>]
			[--nsze-si=<nsze-si> | -S <nsze-si>]
			[--ncap-si=<ncap-si> | -C <ncap-si>]
			[--azr | -z]
			[--rar=<rar> | -r <rar>]
			[--ror=<ror> | -O <ror>]
			[--rnumzrwa=<rnumzrwa> | -u <rnumzrwa>]
			[--phndls=<placement-handle-list,> | -p <placement-handle-list,>]
			[--output-format=<fmt> | -o <fmt>] [--verbose | -v]

DESCRIPTION
-----------
For the NVMe device given, sends a namespace management command to create
the namespace with the requested settings. On success, the namespace
identifier assigned by the controller is returned.

The <device> parameter is mandatory and may be either the NVMe character
device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1).

OPTIONS
-------
-s::
--nsze::
	The namespace size.

-c::
--ncap::
	The namespace capacity.

-f::
--flbas::
	The namespace formatted logical block size setting.
	Conflicts with --block-size argument.

-d::
--dps::
	The data protection settings.

-m::
--nmic::
	Namespace multipath and sharing capabilities.

-a::
--anagrp-id::
	ANA Group Identifier. If this value is 0h specifies
	that the controller determines the value to use

-i <nvmsetid>::
--nvmset-id=<nvmsetid>::
	This field specifies the identifier of the NVM Set.

-e <endgid>::
--endg-id=<endgid>::
	This field specifies the identifier of the endurance group.

-y <command_set_identifier>::
--csi=<command_set_identifier>::
	This field specifies the identifier of command set.
	if not issued, NVM Command Set will be selected.

-l <lbstm>::
--lbstm=<lbstm>::
	Logical Block Storage Tag Mask for end-to-end protection.

-n <nphndls>::
--nphndls=<nphndls>::
	Number of Placement Handle included in the Placement Handle List.
	If the Flexible Data Placement capability is not supported or not enabled
	in specified Endurance Group, then the controller shall ignore this field.

-b::
--block-size::
	Target block size the new namespace should be formatted as. Potential FLBAS
	values will be values will be scanned and the lowest numbered will be
	selected for the create-ns operation. Conflicts with --flbas argument.

-S::
--nsze-si::
	The namespace size (NSZE) in standard SI units (aligned on 1Mib boundaries,
	unless the controller recommends a smaller value).
	The value SI suffixed is divided by the namespace LBA size to set as NSZE.
	If the value not suffixed it is set as same with the nsze option.

-C::
--ncap-si::
	The namespace capacity (NCAP) in standard SI units (aligned on 1Mib boundaries,
	unless the controller recommends a smaller value).
	The value SI suffixed is divided by the namespace LBA size to set as NCAP.
	If the value not suffixed it is set as same with the ncap option.

-z::
--azr::
	Allocate ZRWA Resources.
	If set to 1, then the namespace is to be created with the number of ZRWA
	resource specified in the RNUMZRWA field of this data structure. If cleared
	to 0, then no ZRWA resources are allocated to the namespace to be created.

-r <rar>::
--rar=<rar>::
	Requested Active Resources. This field specifies the number of active
	resources to be allocated to the created namespace.

-O <ror>::
--ror=<ror>::
	Requested Open Resources. This field specifies the number of open resources
	to be allocated to the created namespace.

-u <rnumzrwa>::
--rnumzrwa=<rnumzrwa>::
	Requested Number of ZRWA Resources. This field specifies the number of ZRWA
	resources to be allocated to the created namespace.

-p <placement-handle-list,>::
--phndls=<placement-handle-list,>::
	The comma separated list of Reclaim Unit Handle Identifier to be associated
	with each Placement Handle.

-o <fmt>::
--output-format=<fmt>::
	Set the reporting format to 'normal', 'json' or 'binary'. Only one
	output format can be used at a time.

-v::
--verbose::
	Increase the information detail in the output.

EXAMPLES
--------
* Create a namespace:
+
------------
# nvme create-ns /dev/nvme0 --nsze 11995709440 --ncap 1199570940 --flbas 0 --dps 0 --nmic 0
# nvme create-ns /dev/nvme0 --nsze-si 6.14T --ncap 1199570940 --flbas 0 --dps 0 --nmic 0
------------

NVME
----
Part of the nvme-user suite