1NDCTL-LIST(1) ndctl Manual NDCTL-LIST(1)
2
3
4
6 ndctl-list - dump the platform nvdimm device topology and attributes in
7 json
8
10 ndctl list [<options>]
11
12 Walk all the nvdimm buses in the system and list all attached devices
13 along with some of their major attributes.
14
15 Options can be specified to limit the output to devices of a certain
16 class. Where the classes are buses, dimms, regions, and namespaces. By
17 default, ndctl list with no options is equivalent to:
18
19 ndctl list --namespaces --bus=all --region=all
20
22 .ft C
23 # ndctl list --buses --namespaces
24
25 {
26 "provider":"nfit_test.1",
27 "dev":"ndbus2",
28 "namespaces":[
29 {
30 "dev":"namespace9.0",
31 "mode":"raw",
32 "size":33554432,
33 "blockdev":"pmem9"
34 }
35 ]
36 }
37 {
38 "provider":"nfit_test.0",
39 "dev":"ndbus1"
40 }
41 {
42 "provider":"e820",
43 "dev":"ndbus0",
44 "namespaces":[
45 {
46 "dev":"namespace0.0",
47 "mode":"fsdax",
48 "size":8589934592,
49 "blockdev":"pmem0"
50 }
51 ]
52 }
53 .ft
54
55
57 -r, --region=
58
59
60 A 'regionX' device name, or a region id number. The keyword 'all' can
61 be specified to carry out the operation on every region in the system,
62 optionally filtered by bus id (see --bus= option).
63
64 -b, --bus=
65 Enforce that the operation only be carried on devices that are
66 attached to the given bus. Where bus can be a provider name or a
67 bus id number.
68
69 -d, --dimm=
70 An nmemX device name, or dimm id number. The dimm id number here is
71 X in nmemX. Filter listing by devices that reference the given
72 dimm. For example to see all namespaces comprised of storage
73 capacity on nmem0:
74
75
76 .ft C
77 # ndctl list --dimm=nmem0 --namespaces
78 .ft
79
80
81 -n, --namespace=
82 An namespaceX.Y device name, or namespace region plus id tuple X.Y.
83 Limit the namespace list to the single identified device if
84 present.
85
86 -t, --type=
87 Filter listing by region type (pmem or blk)
88
89 -m, --mode=
90 Filter listing by the mode (raw, fsdax, sector or devdax) of the
91 namespace(s).
92
93 -U, --numa-node=
94 Filter listing by numa node
95
96 -B, --buses
97 Include bus info in the listing
98
99 -D, --dimms
100 Include dimm info in the listing
101
102 -H, --health
103 Include dimm health info in the listing. For example:
104
105 {
106 "dev":"nmem0",
107 "health":{
108 "health_state":"non-critical",
109 "temperature_celsius":23,
110 "spares_percentage":75,
111 "alarm_temperature":true,
112 "alarm_spares":true,
113 "temperature_threshold":40,
114 "spares_threshold":5,
115 "life_used_percentage":5,
116 "shutdown_state":"clean"
117 }
118 }
119
120 -F, --firmware
121 Include dimm firmware info in the listing. For example:
122
123 {
124 "dev":"nmem0",
125 "firmware":{
126 "current_version":0,
127 "next_version":1,
128 "need_powercycle":true
129 }
130 }
131
132 -X, --device-dax
133 Include device-dax ("daxregion") details when a namespace is in
134 "devdax" mode.
135
136 {
137 "dev":"namespace0.0",
138 "mode":"devdax",
139 "size":4225761280,
140 "uuid":"18ae1bbb-bb62-4efc-86df-4a5caacb5dcc",
141 "daxregion":{
142 "id":0,
143 "size":4225761280,
144 "align":2097152,
145 "devices":[
146 {
147 "chardev":"dax0.0",
148 "size":4225761280
149 }
150 ]
151 }
152 }
153
154 -R, --regions
155 Include region info in the listing
156
157 -N, --namespaces
158 Include namespace info in the listing. Namespace info is listed by
159 default if no other options are specified to the command.
160
161 -i, --idle
162 Include idle (not enabled) devices in the listing
163
164 -M, --media-errors
165 Include media errors (badblocks) in the listing. Note that the
166 badblock_count property is included in the listing by default when
167 the count is non-zero, otherwise it is hidden. Also, if the
168 namespace is in sector mode the badblocks listing is not included
169 and badblock_count property may include blocks that are located in
170 metadata, or unused capacity in the namespace. Convert a sector
171 namespace into raw mode to list precise badblocks offsets.
172
173 {
174 "dev":"namespace7.0",
175 "mode":"raw",
176 "size":33554432,
177 "blockdev":"pmem7",
178 "badblock_count":17,
179 "badblocks":[
180 {
181 "offset":4,
182 "length":1
183 },
184 {
185 "offset":32768,
186 "length":8
187 },
188 {
189 "offset":65528,
190 "length":8
191 }
192 ]
193 }
194
195 -v, --verbose
196 Increase verbosity of the output. This can be specified multiple
197 times to be even more verbose on the informational and
198 miscellaneous output, and can be used to override omitted flags for
199 showing specific information.
200
201 -v In addition to the enabled namespaces default output, show the
202 numa_node, raw_uuid, and bad block media errors.
203
204 -vv Everything -v provides, plus automatically enable --dimms,
205 --buses, and --regions.
206
207 -vvv Everything -vv provides, plus --health, --idle, and
208 --firmware.
209
210 -u, --human
211 Format numbers representing storage sizes, or offsets as human
212 readable strings with units instead of the default machine-friendly
213 raw-integer data. Convert other numeric fields into hexadecimal
214 strings.
215
216
217 .ft C
218 # ndctl list --region=7
219 {
220 "dev":"region7",
221 "size":67108864,
222 "available_size":67108864,
223 "type":"pmem",
224 "iset_id":-6382611090938810793,
225 "badblock_count":8
226 }
227 .ft
228
229
230
231 .ft C
232 # ndctl list --human --region=7
233 {
234 "dev":"region7",
235 "size":"64.00 MiB (67.11 MB)",
236 "available_size":"64.00 MiB (67.11 MB)",
237 "type":"pmem",
238 "iset_id":"0xa76c6907811fae57",
239 "badblock_count":8
240 }
241 .ft
242
243
245 Copyright (c) 2016 - 2018, Intel Corporation. License GPLv2: GNU GPL
246 version 2 http://gnu.org/licenses/gpl.html. This is free software: you
247 are free to change and redistribute it. There is NO WARRANTY, to the
248 extent permitted by law.
249
251 ndctl-create-namespace(1)
252
253
254
255ndctl 62 05/11/2019 NDCTL-LIST(1)