Destroying a namespace mode may fail with the following error:
# ndctl destroy-namespace namespace0.0
Error: namespace0.0 is active, specify --force for re-configuration
Changing a namespace mode may fail with the following error:
# ndctl create-namespace -e namespace0.0 -m fsdax
Error: namespace0.0 is active, specify --force for re-configuration
failed to reconfigure namespace: Device or resource busy
The error indicates the namespace is currently active and potentially mounted (FSDAX) or in use, so the operation is not permitted.
ndctl list -N
to show all namespaces or filter the result by specifying namespace name using ndctl list -N namespace{X.Y}
, eg:# ndctl list -N
{
"dev":"namespace0.0",
"mode":"raw",
"size":134217728000,
"uuid":"0a66b46c-5146-45bb-a0f1-320f28db4d40",
"sector_size":512,
"blockdev":"pmem0",
"numa_node":0
}
If the namespace mode is ‘fsdax’, verify any associated filesystems are unmounted.
If the namespace mode is ‘devdax’, verify any application using the device is stopped.
The ‘fuser’ command on Linux can be used to identify any running processes with the /dev/dax* or /dev/pmem* devices open.
-f
, --force
options to override the active status checks.To change the mode of an active namespace without disabling it first, use the -f
, --force
option:
# ndctl create-namespace -f -e namespace0.0 -m fsdax
{
"dev":"namespace0.0",
"mode":"fsdax",
"map":"dev",
"size":"123.04 GiB (132.12 GB)",
"uuid":"1cf25e33-8dfa-4ad2-b409-e236d598bc1e",
"raw_uuid":"9368c235-26d3-4220-9048-e85f3ccd8469",
"sector_size":512,
"blockdev":"pmem0",
"numa_node":0
}
To delete a namespace without disabling it first, use the -f
, --force
option:
# ndctl destroy-namespace -f namespace0.0
destroyed 1 namespace
Alternatively, disable the namespace then perform the destroy/mode change operation. Note: Changing a namespace mode automatically activates it.
To change the namespace mode from ‘raw’ to ‘fsdax’:
# ndctl list -N
{
"dev":"namespace0.0",
"mode":"raw",
"size":134217728000,
"uuid":"ce15f005-d3bd-4a94-8565-55be77bed6f6",
"sector_size":512,
"blockdev":"pmem0",
"numa_node":0
}
# ndctl disable-namespace namespace0.0
disabled 1 namespace
# ndctl create-namespace -e namespace0.0 -m fsdax
{
"dev":"namespace0.0",
"mode":"fsdax",
"map":"dev",
"size":"123.04 GiB (132.12 GB)",
"uuid":"f45a6725-b80e-4174-a366-b07c91e66a58",
"raw_uuid":"ee359fec-0a83-436a-91b6-44e3f45b04e0",
"sector_size":512,
"blockdev":"pmem0",
"numa_node":0
}
To destroy a namespace:
# ndctl list -N
{
"dev":"namespace0.0",
"mode":"fsdax",
"map":"dev",
"size":132118478848,
"uuid":"f45a6725-b80e-4174-a366-b07c91e66a58",
"raw_uuid":"ee359fec-0a83-436a-91b6-44e3f45b04e0",
"sector_size":512,
"blockdev":"pmem0",
"numa_node":0
}
# ndctl disable-namespace namespace0.0
disabled 1 namespace
# ndctl destroy-namespace namespace0.0
destroyed 1 namespace
Disclaimer
Copyright© kb.pmem.io 2020. All rights reserved.Document ID
100000019Creation Date
2020-03-11Modified Date
2020-03-11Copyright© kb.pmem.io 2020. All rights reserved.