summaryrefslogtreecommitdiffstats
path: root/Documentation/nvme-sanitize.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/nvme-sanitize.txt')
-rw-r--r--Documentation/nvme-sanitize.txt112
1 files changed, 112 insertions, 0 deletions
diff --git a/Documentation/nvme-sanitize.txt b/Documentation/nvme-sanitize.txt
new file mode 100644
index 0000000..1e43463
--- /dev/null
+++ b/Documentation/nvme-sanitize.txt
@@ -0,0 +1,112 @@
+nvme-sanitize(1)
+================
+
+NAME
+----
+nvme-sanitize - Send NVMe Sanitize Command, return result
+
+SYNOPSIS
+--------
+[verse]
+'nvme sanitize' <device> [--no-dealloc | -d] [--oipbp | -i]
+ [--owpass=<overwrite-pass-count> | -n <overwrite-pass-count>]
+ [--ause | -u] [--sanact=<action> | -a <action>]
+ [--ovrpat=<overwrite-pattern> | -p <overwrite-pattern>]
+ [--force]
+ [--output-format=<fmt> | -o <fmt>] [--verbose | -v]
+
+DESCRIPTION
+-----------
+For the NVMe device given, sends a Sanitize command and
+provides the result.
+
+The <device> parameter is mandatory NVMe character device (ex: /dev/nvme0).
+
+On success it returns 0, error code otherwise.
+
+OPTIONS
+-------
+-d::
+--no-dealloc::
+ No Deallocate After Sanitize:
+ If set, then the controller shall not deallocate any logical
+ blocks as a result of successfully completing the sanitize
+ operation. If cleared, then the controller should deallocate
+ logical blocks as a result of successfully completing the
+ sanitize operation. This bit shall be ignored if the Sanitize
+ Action field is set to 001b (i.e., Exit Failure Mode).
+
+-i::
+--oipbp::
+ Overwrite Invert Pattern Between Passes:
+ If set, then the Overwrite Pattern shall be inverted between
+ passes. If cleared, then the overwrite pattern shall not be
+ inverted between passes. This bit shall be ignored unless the
+ Sanitize Action field is set to 011b (i.e., Overwrite).
+
+-n <overwrite-pass-count>::
+--owpass=<overwrite-pass-count>::
+ Overwrite Pass Count:
+ This field specifies the number of overwrite passes (i.e.,
+ how many times the media is to be overwritten) using the data
+ from the Overwrite Pattern field of this command. A value of 0
+ specifies 16 overwrite passes. This field shall be ignored
+ unless the Sanitize Action field is set to 011b (i.e., Overwrite).
+
+-u::
+--ause::
+ Allow Unrestricted Sanitize Exit:
+ If set, then the sanitize operation is performed in unrestricted
+ completion mode. If cleared then the sanitize operation is
+ performed in restricted completion mode. This bit shall be ignored
+ if the Sanitize Action field is set to 001b (i.e., Exit Failure Mode).
+
+-a <action>::
+--sanact=<action>::
+ Sanitize Action:
++
+[]
+|=================
+|Value|Definition
+|0x00| Reserved
+|0x01 \| 'exit-failure'| Exit Failure Mode
+|0x02 \| 'start-block-erase'| Start a Block Erase sanitize operation
+|0x03 \| 'start-overwrite'| Start an Overwrite sanitize operation
+|0x04 \| 'start-crypto-erase'| Start a Crypto Erase sanitize operation
+|=================
+
+-p <overwrite-pattern>::
+--ovrpat=<overwrite-pattern>::
+ Overwrite Pattern:
+ This field is ignored unless the Sanitize Action field in
+ Command Dword 10 is set to 011b (i.e., Overwrite). This field
+ specifies a 32-bit pattern that is used for the Overwrite
+ sanitize operation.
+
+--force::
+ Ignore namespace is currently busy and performed the operation
+ even though.
+
+-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
+--------
+* Has the program issue Sanitize Command :
++
+------------
+# nvme sanitize /dev/nvme0 -a 0x02
+# nvme sanitize /dev/nvme0 --sanact=0x01
+# nvme sanitize /dev/nvme0 --sanact=start-overwrite
+
+------------
+
+NVME
+----
+Part of the nvme-user suite.