1NDCTL-ENABLE-NAMESPACE(1) ndctl Manual NDCTL-ENABLE-NAMESPACE(1)
2
3
4
6 ndctl-enable-namespace - enable the given namespace(s)
7
9 ndctl enable-namespace <namespace> [<options>]
10
12 The capacity of an NVDIMM REGION (contiguous span of persistent memory)
13 is accessed via one or more NAMESPACE devices. REGION is the Linux term
14 for what ACPI and UEFI call a DIMM-interleave-set, or a
15 system-physical-address-range that is striped (by the memory
16 controller) across one or more memory modules.
17
18 The UEFI specification defines the NVDIMM Label Protocol as the
19 combination of label area access methods and a data format for
20 provisioning one or more NAMESPACE objects from a REGION. Note that
21 label support is optional and if Linux does not detect the label
22 capability it will automatically instantiate a "label-less" namespace
23 per region. Examples of label-less namespaces are the ones created by
24 the kernel’s memmap=ss!nn command line option (see the nvdimm wiki on
25 kernel.org), or NVDIMMs without a valid namespace index in their label
26 area.
27
28 A namespace can be provisioned to operate in one of 4 modes, fsdax,
29 devdax, sector, and raw. Here are the expected usage models for these
30 modes:
31
32 · fsdax: Filesystem-DAX mode is the default mode of a namespace when
33 specifying ndctl create-namespace with no options. It creates a
34 block device (/dev/pmemX[.Y]) that supports the DAX capabilities of
35 Linux filesystems (xfs and ext4 to date). DAX removes the page
36 cache from the I/O path and allows mmap(2) to establish direct
37 mappings to persistent memory media. The DAX capability enables
38 workloads / working-sets that would exceed the capacity of the page
39 cache to scale up to the capacity of persistent memory. Workloads
40 that fit in page cache or perform bulk data transfers may not see
41 benefit from DAX. When in doubt, pick this mode.
42
43 · devdax: Device-DAX mode enables similar mmap(2) DAX mapping
44 capabilities as Filesystem-DAX. However, instead of a block-device
45 that can support a DAX-enabled filesystem, this mode emits a single
46 character device file (/dev/daxX.Y). Use this mode to assign
47 persistent memory to a virtual-machine, register persistent memory
48 for RDMA, or when gigantic mappings are needed.
49
50 · sector: Use this mode to host legacy filesystems that do not
51 checksum metadata or applications that are not prepared for torn
52 sectors after a crash. Expected usage for this mode is for small
53 boot volumes. This mode is compatible with other operating systems.
54
55 · raw: Raw mode is effectively just a memory disk that does not
56 support DAX. Typically this indicates a namespace that was created
57 by tooling or another operating system that did not know how to
58 create a Linux fsdax or devdax mode namespace. This mode is
59 compatible with other operating systems, but again, does not
60 support DAX operation.
61
63 <namespace>
64 A namespaceX.Y device name. The keyword all can be specified to
65 carry out the operation on every namespace in the system,
66 optionally filtered by region (see --region=option)
67
68 -r, --region=
69
70 A 'regionX' device name, or a region id number. The keyword 'all' can
71 be specified to carry out the operation on every region in the system,
72 optionally filtered by bus id (see --bus= option).
73
74 -b, --bus=
75 Enforce that the operation only be carried on devices that are
76 attached to the given bus. Where bus can be a provider name or a
77 bus id number.
78
79 -v, --verbose
80 Emit debug messages for the namespace operation
81
83 Copyright (c) 2016 - 2019, Intel Corporation. License GPLv2: GNU GPL
84 version 2 <http://gnu.org/licenses/gpl.html>. This is free software:
85 you are free to change and redistribute it. There is NO WARRANTY, to
86 the extent permitted by law.
87
89 ndctl-disable-namespace(1)
90
91
92
93ndctl 2019-05-10 NDCTL-ENABLE-NAMESPACE(1)