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
|
'\" t
.\" Title: nvme-create-ns
.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 08/05/2024
.\" Manual: NVMe Manual
.\" Source: NVMe
.\" Language: English
.\"
.TH "NVME\-CREATE\-NS" "1" "08/05/2024" "NVMe" "NVMe Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
nvme-create-ns \- Send NVMe Namespace management command to create namespace, returns results\&.
.SH "SYNOPSIS"
.sp
.nf
\fInvme create\-ns\fR <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]
.fi
.SH "DESCRIPTION"
.sp
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\&.
.sp
The <device> parameter is mandatory and may be either the NVMe character device (ex: /dev/nvme0), or a namespace block device (ex: /dev/nvme0n1)\&.
.SH "OPTIONS"
.PP
\-s, \-\-nsze
.RS 4
The namespace size\&.
.RE
.PP
\-c, \-\-ncap
.RS 4
The namespace capacity\&.
.RE
.PP
\-f, \-\-flbas
.RS 4
The namespace formatted logical block size setting\&. Conflicts with \-\-block\-size argument\&.
.RE
.PP
\-d, \-\-dps
.RS 4
The data protection settings\&.
.RE
.PP
\-m, \-\-nmic
.RS 4
Namespace multipath and sharing capabilities\&.
.RE
.PP
\-a, \-\-anagrp\-id
.RS 4
ANA Group Identifier\&. If this value is 0h specifies that the controller determines the value to use
.RE
.PP
\-i <nvmsetid>, \-\-nvmset\-id=<nvmsetid>
.RS 4
This field specifies the identifier of the NVM Set\&.
.RE
.PP
\-e <endgid>, \-\-endg\-id=<endgid>
.RS 4
This field specifies the identifier of the endurance group\&.
.RE
.PP
\-y <command_set_identifier>, \-\-csi=<command_set_identifier>
.RS 4
This field specifies the identifier of command set\&. if not issued, NVM Command Set will be selected\&.
.RE
.PP
\-l <lbstm>, \-\-lbstm=<lbstm>
.RS 4
Logical Block Storage Tag Mask for end\-to\-end protection\&.
.RE
.PP
\-n <nphndls>, \-\-nphndls=<nphndls>
.RS 4
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\&.
.RE
.PP
\-b, \-\-block\-size
.RS 4
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\&.
.RE
.PP
\-S, \-\-nsze\-si
.RS 4
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\&.
.RE
.PP
\-C, \-\-ncap\-si
.RS 4
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\&.
.RE
.PP
\-z, \-\-azr
.RS 4
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\&.
.RE
.PP
\-r <rar>, \-\-rar=<rar>
.RS 4
Requested Active Resources\&. This field specifies the number of active resources to be allocated to the created namespace\&.
.RE
.PP
\-O <ror>, \-\-ror=<ror>
.RS 4
Requested Open Resources\&. This field specifies the number of open resources to be allocated to the created namespace\&.
.RE
.PP
\-u <rnumzrwa>, \-\-rnumzrwa=<rnumzrwa>
.RS 4
Requested Number of ZRWA Resources\&. This field specifies the number of ZRWA resources to be allocated to the created namespace\&.
.RE
.PP
\-p <placement\-handle\-list,>, \-\-phndls=<placement\-handle\-list,>
.RS 4
The comma separated list of Reclaim Unit Handle Identifier to be associated with each Placement Handle\&.
.RE
.PP
\-o <fmt>, \-\-output\-format=<fmt>
.RS 4
Set the reporting format to
\fInormal\fR,
\fIjson\fR
or
\fIbinary\fR\&. Only one output format can be used at a time\&.
.RE
.PP
\-v, \-\-verbose
.RS 4
Increase the information detail in the output\&.
.RE
.PP
\-t <timeout>, \-\-timeout=<timeout>
.RS 4
Override default timeout value 120,000\&. In milliseconds\&.
.RE
.SH "EXAMPLES"
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Create a namespace:
.sp
.if n \{\
.RS 4
.\}
.nf
# 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
.fi
.if n \{\
.RE
.\}
.RE
.SH "NVME"
.sp
Part of the nvme\-user suite
|