]> www.infradead.org Git - users/sagi/nvme-cli.git/commitdiff
doc: Remove lightnvm documentation
authorDaniel Wagner <dwagner@suse.de>
Wed, 19 Jan 2022 17:10:05 +0000 (18:10 +0100)
committerDaniel Wagner <dwagner@suse.de>
Wed, 19 Jan 2022 17:10:05 +0000 (18:10 +0100)
Commit fa49249 ("nvme: remove lightnvm") removed the implementation but
missed to remove the documentation. Remove it now.

While at it also remove it from bash-completion.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
29 files changed:
Documentation/meson.build
Documentation/nvme-lnvm-create.1 [deleted file]
Documentation/nvme-lnvm-create.html [deleted file]
Documentation/nvme-lnvm-create.txt [deleted file]
Documentation/nvme-lnvm-diag-bbtbl.1 [deleted file]
Documentation/nvme-lnvm-diag-bbtbl.html [deleted file]
Documentation/nvme-lnvm-diag-bbtbl.txt [deleted file]
Documentation/nvme-lnvm-diag-set-bbtbl.1 [deleted file]
Documentation/nvme-lnvm-diag-set-bbtbl.html [deleted file]
Documentation/nvme-lnvm-diag-set-bbtbl.txt [deleted file]
Documentation/nvme-lnvm-factory.1 [deleted file]
Documentation/nvme-lnvm-factory.html [deleted file]
Documentation/nvme-lnvm-factory.txt [deleted file]
Documentation/nvme-lnvm-id-ns.1 [deleted file]
Documentation/nvme-lnvm-id-ns.html [deleted file]
Documentation/nvme-lnvm-id-ns.txt [deleted file]
Documentation/nvme-lnvm-info.1 [deleted file]
Documentation/nvme-lnvm-info.html [deleted file]
Documentation/nvme-lnvm-info.txt [deleted file]
Documentation/nvme-lnvm-init.1 [deleted file]
Documentation/nvme-lnvm-init.html [deleted file]
Documentation/nvme-lnvm-init.txt [deleted file]
Documentation/nvme-lnvm-list.1 [deleted file]
Documentation/nvme-lnvm-list.html [deleted file]
Documentation/nvme-lnvm-list.txt [deleted file]
Documentation/nvme-lnvm-remove.1 [deleted file]
Documentation/nvme-lnvm-remove.html [deleted file]
Documentation/nvme-lnvm-remove.txt [deleted file]
completions/bash-nvme-completion.sh

index ab5577c5862b3c5025dd3dd31d343dbe233633cc..fd10a7c368a21847fe31583c996bcce0ee4031c0 100644 (file)
@@ -58,15 +58,6 @@ adoc_sources = [
   'nvme-list-ns',
   'nvme-list-subsys',
   'nvme-list',
-  'nvme-lnvm-create',
-  'nvme-lnvm-diag-bbtbl',
-  'nvme-lnvm-diag-set-bbtbl',
-  'nvme-lnvm-factory',
-  'nvme-lnvm-id-ns',
-  'nvme-lnvm-info',
-  'nvme-lnvm-init',
-  'nvme-lnvm-list',
-  'nvme-lnvm-remove',
   'nvme-lockdown',
   'nvme-micron-clear-pcie-errors',
   'nvme-micron-internal-log',
diff --git a/Documentation/nvme-lnvm-create.1 b/Documentation/nvme-lnvm-create.1
deleted file mode 100644 (file)
index 6080207..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-'\" t
-.\"     Title: nvme-lnvm-create
-.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
-.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 10/20/2020
-.\"    Manual: NVMe Manual
-.\"    Source: NVMe
-.\"  Language: English
-.\"
-.TH "NVME\-LNVM\-CREATE" "1" "10/20/2020" "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-lnvm-create \- Instantiate a target on top of a LightNVM enabled device
-.SH "SYNOPSIS"
-.sp
-.nf
-\fInvme lnvm\-create\fR [\-\-device\-name=<DEVICE> | \-d <DEVICE>]
-                        [\-\-target\-name=<TARGET> | \-n <TARGET>]
-                        [\-\-target\-type=<TARGETTYPE> | \-t <TARGETTYPE>]
-                        [\-\-lun\-begin <NUM> | \-b <NUM>]
-                        [\-\-lun\-end <NUM> | \-e <NUM>]
-.fi
-.SH "DESCRIPTION"
-.sp
-Instantiate a target on top of a LightNVM enabled device\&. This exposes the physical for the user to use\&.
-.sp
-The target name is the name of which the media is exposed as in /dev/<targetname>
-.sp
-The target type is the target to be instantiated\&. Typically pblk or rrpc\&.
-.sp
-LUN begin and end defines the range of LUNs to use for a target instantiation\&.
-.SH "OPTIONS"
-.PP
-\-\-device\-name=<DEVICE>, \-d <DEVICE>
-.RS 4
-Device name to initialize\&.
-.RE
-.PP
-\-\-target\-name=<TARGET>, \-n <TARGET>
-.RS 4
-Target name of the device to initialize\&. For example: target0\&.
-.RE
-.PP
-\-\-target\-type=<TARGETTYPE>, \-t <TARGETTYPE>
-.RS 4
-Target type of the device to use\&. For example: pblk
-.RE
-.PP
-\-\-lun\-begin <NUM>, \-b <NUM>
-.RS 4
-Begin LUN id offset to use for target
-.RE
-.PP
-\-\-lun\-end <NUM>, \-e <NUM>
-.RS 4
-End LUN id offset to use for target
-.RE
-.SH "EXAMPLES"
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-Initialize nvme0n1 with pblk target with 64 LUNs\&.
-.RE
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-# nvme lnvm\-create \-d nvme0n1 \-t pblk \-n target0 \-b 0 \-e 63
-.fi
-.if n \{\
-.RE
-.\}
-.SH "NVME"
-.sp
-Part of the nvme\-user suite
diff --git a/Documentation/nvme-lnvm-create.html b/Documentation/nvme-lnvm-create.html
deleted file mode 100644 (file)
index cde3761..0000000
+++ /dev/null
@@ -1,865 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
-    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
-<head>\r
-<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc 8.6.10" />\r
-<title>nvme-lnvm-create(1)</title>\r
-<style type="text/css">\r
-/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
-\r
-/* Default font. */\r
-body {\r
-  font-family: Georgia,serif;\r
-}\r
-\r
-/* Title font. */\r
-h1, h2, h3, h4, h5, h6,\r
-div.title, caption.title,\r
-thead, p.table.header,\r
-#toctitle,\r
-#author, #revnumber, #revdate, #revremark,\r
-#footer {\r
-  font-family: Arial,Helvetica,sans-serif;\r
-}\r
-\r
-body {\r
-  margin: 1em 5% 1em 5%;\r
-}\r
-\r
-a {\r
-  color: blue;\r
-  text-decoration: underline;\r
-}\r
-a:visited {\r
-  color: fuchsia;\r
-}\r
-\r
-em {\r
-  font-style: italic;\r
-  color: navy;\r
-}\r
-\r
-strong {\r
-  font-weight: bold;\r
-  color: #083194;\r
-}\r
-\r
-h1, h2, h3, h4, h5, h6 {\r
-  color: #527bbd;\r
-  margin-top: 1.2em;\r
-  margin-bottom: 0.5em;\r
-  line-height: 1.3;\r
-}\r
-\r
-h1, h2, h3 {\r
-  border-bottom: 2px solid silver;\r
-}\r
-h2 {\r
-  padding-top: 0.5em;\r
-}\r
-h3 {\r
-  float: left;\r
-}\r
-h3 + * {\r
-  clear: left;\r
-}\r
-h5 {\r
-  font-size: 1.0em;\r
-}\r
-\r
-div.sectionbody {\r
-  margin-left: 0;\r
-}\r
-\r
-hr {\r
-  border: 1px solid silver;\r
-}\r
-\r
-p {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0.5em;\r
-}\r
-\r
-ul, ol, li > p {\r
-  margin-top: 0;\r
-}\r
-ul > li     { color: #aaa; }\r
-ul > li > * { color: black; }\r
-\r
-.monospaced, code, pre {\r
-  font-family: "Courier New", Courier, monospace;\r
-  font-size: inherit;\r
-  color: navy;\r
-  padding: 0;\r
-  margin: 0;\r
-}\r
-pre {\r
-  white-space: pre-wrap;\r
-}\r
-\r
-#author {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  font-size: 1.1em;\r
-}\r
-#email {\r
-}\r
-#revnumber, #revdate, #revremark {\r
-}\r
-\r
-#footer {\r
-  font-size: small;\r
-  border-top: 2px solid silver;\r
-  padding-top: 0.5em;\r
-  margin-top: 4.0em;\r
-}\r
-#footer-text {\r
-  float: left;\r
-  padding-bottom: 0.5em;\r
-}\r
-#footer-badges {\r
-  float: right;\r
-  padding-bottom: 0.5em;\r
-}\r
-\r
-#preamble {\r
-  margin-top: 1.5em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.imageblock, div.exampleblock, div.verseblock,\r
-div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
-div.admonitionblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.admonitionblock {\r
-  margin-top: 2.0em;\r
-  margin-bottom: 2.0em;\r
-  margin-right: 10%;\r
-  color: #606060;\r
-}\r
-\r
-div.content { /* Block element content. */\r
-  padding: 0;\r
-}\r
-\r
-/* Block element titles. */\r
-div.title, caption.title {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  text-align: left;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.5em;\r
-}\r
-div.title + * {\r
-  margin-top: 0;\r
-}\r
-\r
-td div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content + div.title {\r
-  margin-top: 0.0em;\r
-}\r
-\r
-div.sidebarblock > div.content {\r
-  background: #ffffee;\r
-  border: 1px solid #dddddd;\r
-  border-left: 4px solid #f0f0f0;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.listingblock > div.content {\r
-  border: 1px solid #dddddd;\r
-  border-left: 5px solid #f0f0f0;\r
-  background: #f8f8f8;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.quoteblock, div.verseblock {\r
-  padding-left: 1.0em;\r
-  margin-left: 1.0em;\r
-  margin-right: 10%;\r
-  border-left: 5px solid #f0f0f0;\r
-  color: #888;\r
-}\r
-\r
-div.quoteblock > div.attribution {\r
-  padding-top: 0.5em;\r
-  text-align: right;\r
-}\r
-\r
-div.verseblock > pre.content {\r
-  font-family: inherit;\r
-  font-size: inherit;\r
-}\r
-div.verseblock > div.attribution {\r
-  padding-top: 0.75em;\r
-  text-align: left;\r
-}\r
-/* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
-div.verseblock + div.attribution {\r
-  text-align: left;\r
-}\r
-\r
-div.admonitionblock .icon {\r
-  vertical-align: top;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  text-decoration: underline;\r
-  color: #527bbd;\r
-  padding-right: 0.5em;\r
-}\r
-div.admonitionblock td.content {\r
-  padding-left: 0.5em;\r
-  border-left: 3px solid #dddddd;\r
-}\r
-\r
-div.exampleblock > div.content {\r
-  border-left: 3px solid #dddddd;\r
-  padding-left: 0.5em;\r
-}\r
-\r
-div.imageblock div.content { padding-left: 0; }\r
-span.image img { border-style: none; vertical-align: text-bottom; }\r
-a.image:visited { color: white; }\r
-\r
-dl {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-dt {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0;\r
-  font-style: normal;\r
-  color: navy;\r
-}\r
-dd > *:first-child {\r
-  margin-top: 0.1em;\r
-}\r
-\r
-ul, ol {\r
-    list-style-position: outside;\r
-}\r
-ol.arabic {\r
-  list-style-type: decimal;\r
-}\r
-ol.loweralpha {\r
-  list-style-type: lower-alpha;\r
-}\r
-ol.upperalpha {\r
-  list-style-type: upper-alpha;\r
-}\r
-ol.lowerroman {\r
-  list-style-type: lower-roman;\r
-}\r
-ol.upperroman {\r
-  list-style-type: upper-roman;\r
-}\r
-\r
-div.compact ul, div.compact ol,\r
-div.compact p, div.compact p,\r
-div.compact div, div.compact div {\r
-  margin-top: 0.1em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-tfoot {\r
-  font-weight: bold;\r
-}\r
-td > div.verse {\r
-  white-space: pre;\r
-}\r
-\r
-div.hdlist {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-div.hdlist tr {\r
-  padding-bottom: 15px;\r
-}\r
-dt.hdlist1.strong, td.hdlist1.strong {\r
-  font-weight: bold;\r
-}\r
-td.hdlist1 {\r
-  vertical-align: top;\r
-  font-style: normal;\r
-  padding-right: 0.8em;\r
-  color: navy;\r
-}\r
-td.hdlist2 {\r
-  vertical-align: top;\r
-}\r
-div.hdlist.compact tr {\r
-  margin: 0;\r
-  padding-bottom: 0;\r
-}\r
-\r
-.comment {\r
-  background: yellow;\r
-}\r
-\r
-.footnote, .footnoteref {\r
-  font-size: 0.8em;\r
-}\r
-\r
-span.footnote, span.footnoteref {\r
-  vertical-align: super;\r
-}\r
-\r
-#footnotes {\r
-  margin: 20px 0 20px 0;\r
-  padding: 7px 0 0 0;\r
-}\r
-\r
-#footnotes div.footnote {\r
-  margin: 0 0 5px 0;\r
-}\r
-\r
-#footnotes hr {\r
-  border: none;\r
-  border-top: 1px solid silver;\r
-  height: 1px;\r
-  text-align: left;\r
-  margin-left: 0;\r
-  width: 20%;\r
-  min-width: 100px;\r
-}\r
-\r
-div.colist td {\r
-  padding-right: 0.5em;\r
-  padding-bottom: 0.3em;\r
-  vertical-align: top;\r
-}\r
-div.colist td img {\r
-  margin-top: 0.3em;\r
-}\r
-\r
-@media print {\r
-  #footer-badges { display: none; }\r
-}\r
-\r
-#toc {\r
-  margin-bottom: 2.5em;\r
-}\r
-\r
-#toctitle {\r
-  color: #527bbd;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
-  margin-top: 0;\r
-  margin-bottom: 0;\r
-}\r
-div.toclevel2 {\r
-  margin-left: 2em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel3 {\r
-  margin-left: 4em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel4 {\r
-  margin-left: 6em;\r
-  font-size: 0.9em;\r
-}\r
-\r
-span.aqua { color: aqua; }\r
-span.black { color: black; }\r
-span.blue { color: blue; }\r
-span.fuchsia { color: fuchsia; }\r
-span.gray { color: gray; }\r
-span.green { color: green; }\r
-span.lime { color: lime; }\r
-span.maroon { color: maroon; }\r
-span.navy { color: navy; }\r
-span.olive { color: olive; }\r
-span.purple { color: purple; }\r
-span.red { color: red; }\r
-span.silver { color: silver; }\r
-span.teal { color: teal; }\r
-span.white { color: white; }\r
-span.yellow { color: yellow; }\r
-\r
-span.aqua-background { background: aqua; }\r
-span.black-background { background: black; }\r
-span.blue-background { background: blue; }\r
-span.fuchsia-background { background: fuchsia; }\r
-span.gray-background { background: gray; }\r
-span.green-background { background: green; }\r
-span.lime-background { background: lime; }\r
-span.maroon-background { background: maroon; }\r
-span.navy-background { background: navy; }\r
-span.olive-background { background: olive; }\r
-span.purple-background { background: purple; }\r
-span.red-background { background: red; }\r
-span.silver-background { background: silver; }\r
-span.teal-background { background: teal; }\r
-span.white-background { background: white; }\r
-span.yellow-background { background: yellow; }\r
-\r
-span.big { font-size: 2em; }\r
-span.small { font-size: 0.6em; }\r
-\r
-span.underline { text-decoration: underline; }\r
-span.overline { text-decoration: overline; }\r
-span.line-through { text-decoration: line-through; }\r
-\r
-div.unbreakable { page-break-inside: avoid; }\r
-\r
-\r
-/*\r
- * xhtml11 specific\r
- *\r
- * */\r
-\r
-div.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.tableblock > table {\r
-  border: 3px solid #527bbd;\r
-}\r
-thead, p.table.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.table {\r
-  margin-top: 0;\r
-}\r
-/* Because the table frame attribute is overriden by CSS in most browsers. */\r
-div.tableblock > table[frame="void"] {\r
-  border-style: none;\r
-}\r
-div.tableblock > table[frame="hsides"] {\r
-  border-left-style: none;\r
-  border-right-style: none;\r
-}\r
-div.tableblock > table[frame="vsides"] {\r
-  border-top-style: none;\r
-  border-bottom-style: none;\r
-}\r
-\r
-\r
-/*\r
- * html5 specific\r
- *\r
- * */\r
-\r
-table.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-thead, p.tableblock.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.tableblock {\r
-  margin-top: 0;\r
-}\r
-table.tableblock {\r
-  border-width: 3px;\r
-  border-spacing: 0px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-  border-collapse: collapse;\r
-}\r
-th.tableblock, td.tableblock {\r
-  border-width: 1px;\r
-  padding: 4px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-}\r
-\r
-table.tableblock.frame-topbot {\r
-  border-left-style: hidden;\r
-  border-right-style: hidden;\r
-}\r
-table.tableblock.frame-sides {\r
-  border-top-style: hidden;\r
-  border-bottom-style: hidden;\r
-}\r
-table.tableblock.frame-none {\r
-  border-style: hidden;\r
-}\r
-\r
-th.tableblock.halign-left, td.tableblock.halign-left {\r
-  text-align: left;\r
-}\r
-th.tableblock.halign-center, td.tableblock.halign-center {\r
-  text-align: center;\r
-}\r
-th.tableblock.halign-right, td.tableblock.halign-right {\r
-  text-align: right;\r
-}\r
-\r
-th.tableblock.valign-top, td.tableblock.valign-top {\r
-  vertical-align: top;\r
-}\r
-th.tableblock.valign-middle, td.tableblock.valign-middle {\r
-  vertical-align: middle;\r
-}\r
-th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
-  vertical-align: bottom;\r
-}\r
-\r
-\r
-/*\r
- * manpage specific\r
- *\r
- * */\r
-\r
-body.manpage h1 {\r
-  padding-top: 0.5em;\r
-  padding-bottom: 0.5em;\r
-  border-top: 2px solid silver;\r
-  border-bottom: 2px solid silver;\r
-}\r
-body.manpage h2 {\r
-  border-style: none;\r
-}\r
-body.manpage div.sectionbody {\r
-  margin-left: 3em;\r
-}\r
-\r
-@media print {\r
-  body.manpage div#toc { display: none; }\r
-}\r
-\r
-\r
-</style>\r
-<script type="text/javascript">\r
-/*<![CDATA[*/\r
-var asciidoc = {  // Namespace.\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Table Of Contents generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Author: Mihai Bazon, September 2002\r
- * http://students.infoiasi.ro/~mishoo\r
- *\r
- * Table Of Content generator\r
- * Version: 0.4\r
- *\r
- * Feel free to use this script under the terms of the GNU General Public\r
- * License, as long as you do not remove or alter this notice.\r
- */\r
-\r
- /* modified by Troy D. Hanson, September 2006. License: GPL */\r
- /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
-\r
-// toclevels = 1..4.\r
-toc: function (toclevels) {\r
-\r
-  function getText(el) {\r
-    var text = "";\r
-    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
-        text += i.data;\r
-      else if (i.firstChild != null)\r
-        text += getText(i);\r
-    }\r
-    return text;\r
-  }\r
-\r
-  function TocEntry(el, text, toclevel) {\r
-    this.element = el;\r
-    this.text = text;\r
-    this.toclevel = toclevel;\r
-  }\r
-\r
-  function tocEntries(el, toclevels) {\r
-    var result = new Array;\r
-    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
-    // Function that scans the DOM tree for header elements (the DOM2\r
-    // nodeIterator API would be a better technique but not supported by all\r
-    // browsers).\r
-    var iterate = function (el) {\r
-      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
-          var mo = re.exec(i.tagName);\r
-          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
-            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
-          }\r
-          iterate(i);\r
-        }\r
-      }\r
-    }\r
-    iterate(el);\r
-    return result;\r
-  }\r
-\r
-  var toc = document.getElementById("toc");\r
-  if (!toc) {\r
-    return;\r
-  }\r
-\r
-  // Delete existing TOC entries in case we're reloading the TOC.\r
-  var tocEntriesToRemove = [];\r
-  var i;\r
-  for (i = 0; i < toc.childNodes.length; i++) {\r
-    var entry = toc.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div'\r
-     && entry.getAttribute("class")\r
-     && entry.getAttribute("class").match(/^toclevel/))\r
-      tocEntriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
-    toc.removeChild(tocEntriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild TOC entries.\r
-  var entries = tocEntries(document.getElementById("content"), toclevels);\r
-  for (var i = 0; i < entries.length; ++i) {\r
-    var entry = entries[i];\r
-    if (entry.element.id == "")\r
-      entry.element.id = "_toc_" + i;\r
-    var a = document.createElement("a");\r
-    a.href = "#" + entry.element.id;\r
-    a.appendChild(document.createTextNode(entry.text));\r
-    var div = document.createElement("div");\r
-    div.appendChild(a);\r
-    div.className = "toclevel" + entry.toclevel;\r
-    toc.appendChild(div);\r
-  }\r
-  if (entries.length == 0)\r
-    toc.parentNode.removeChild(toc);\r
-},\r
-\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Footnotes generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Based on footnote generation code from:\r
- * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
- */\r
-\r
-footnotes: function () {\r
-  // Delete existing footnote entries in case we're reloading the footnodes.\r
-  var i;\r
-  var noteholder = document.getElementById("footnotes");\r
-  if (!noteholder) {\r
-    return;\r
-  }\r
-  var entriesToRemove = [];\r
-  for (i = 0; i < noteholder.childNodes.length; i++) {\r
-    var entry = noteholder.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
-      entriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < entriesToRemove.length; i++) {\r
-    noteholder.removeChild(entriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild footnote entries.\r
-  var cont = document.getElementById("content");\r
-  var spans = cont.getElementsByTagName("span");\r
-  var refs = {};\r
-  var n = 0;\r
-  for (i=0; i<spans.length; i++) {\r
-    if (spans[i].className == "footnote") {\r
-      n++;\r
-      var note = spans[i].getAttribute("data-note");\r
-      if (!note) {\r
-        // Use [\s\S] in place of . so multi-line matches work.\r
-        // Because JavaScript has no s (dotall) regex flag.\r
-        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
-        spans[i].innerHTML =\r
-          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-        spans[i].setAttribute("data-note", note);\r
-      }\r
-      noteholder.innerHTML +=\r
-        "<div class='footnote' id='_footnote_" + n + "'>" +\r
-        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
-        n + "</a>. " + note + "</div>";\r
-      var id =spans[i].getAttribute("id");\r
-      if (id != null) refs["#"+id] = n;\r
-    }\r
-  }\r
-  if (n == 0)\r
-    noteholder.parentNode.removeChild(noteholder);\r
-  else {\r
-    // Process footnoterefs.\r
-    for (i=0; i<spans.length; i++) {\r
-      if (spans[i].className == "footnoteref") {\r
-        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
-        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
-        n = refs[href];\r
-        spans[i].innerHTML =\r
-          "[<a href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-      }\r
-    }\r
-  }\r
-},\r
-\r
-install: function(toclevels) {\r
-  var timerId;\r
-\r
-  function reinstall() {\r
-    asciidoc.footnotes();\r
-    if (toclevels) {\r
-      asciidoc.toc(toclevels);\r
-    }\r
-  }\r
-\r
-  function reinstallAndRemoveTimer() {\r
-    clearInterval(timerId);\r
-    reinstall();\r
-  }\r
-\r
-  timerId = setInterval(reinstall, 500);\r
-  if (document.addEventListener)\r
-    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
-  else\r
-    window.onload = reinstallAndRemoveTimer;\r
-}\r
-\r
-}\r
-asciidoc.install();\r
-/*]]>*/\r
-</script>\r
-</head>\r
-<body class="manpage">\r
-<div id="header">\r
-<h1>\r
-nvme-lnvm-create(1) Manual Page\r
-</h1>\r
-<h2>NAME</h2>\r
-<div class="sectionbody">\r
-<p>nvme-lnvm-create -\r
-   Instantiate a target on top of a LightNVM enabled device\r
-</p>\r
-</div>\r
-</div>\r
-<div id="content">\r
-<div class="sect1">\r
-<h2 id="_synopsis">SYNOPSIS</h2>\r
-<div class="sectionbody">\r
-<div class="verseblock">\r
-<pre class="content"><em>nvme lnvm-create</em> [--device-name=&lt;DEVICE&gt; | -d &lt;DEVICE&gt;]\r
-                        [--target-name=&lt;TARGET&gt; | -n &lt;TARGET&gt;]\r
-                        [--target-type=&lt;TARGETTYPE&gt; | -t &lt;TARGETTYPE&gt;]\r
-                        [--lun-begin &lt;NUM&gt; | -b &lt;NUM&gt;]\r
-                        [--lun-end &lt;NUM&gt; | -e &lt;NUM&gt;]</pre>\r
-<div class="attribution">\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_description">DESCRIPTION</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Instantiate a target on top of a LightNVM enabled device. This exposes the\r
-physical for the user to use.</p></div>\r
-<div class="paragraph"><p>The target name is the name of which the media is exposed as in\r
-/dev/&lt;targetname&gt;</p></div>\r
-<div class="paragraph"><p>The target type is the target to be instantiated. Typically pblk or rrpc.</p></div>\r
-<div class="paragraph"><p>LUN begin and end defines the range of LUNs to use for a target instantiation.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_options">OPTIONS</h2>\r
-<div class="sectionbody">\r
-<div class="dlist"><dl>\r
-<dt class="hdlist1">\r
---device-name=&lt;DEVICE&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--d &lt;DEVICE&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Device name to initialize.\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---target-name=&lt;TARGET&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--n &lt;TARGET&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Target name of the device to initialize. For example: target0.\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---target-type=&lt;TARGETTYPE&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--t &lt;TARGETTYPE&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Target type of the device to use. For example: pblk\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---lun-begin &lt;NUM&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--b &lt;NUM&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Begin LUN id offset to use for target\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---lun-end &lt;NUM&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--e &lt;NUM&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        End LUN id offset to use for target\r
-</p>\r
-</dd>\r
-</dl></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_examples">EXAMPLES</h2>\r
-<div class="sectionbody">\r
-<div class="ulist"><ul>\r
-<li>\r
-<p>\r
-Initialize nvme0n1 with pblk target with 64 LUNs.\r
-</p>\r
-</li>\r
-</ul></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code># nvme lnvm-create -d nvme0n1 -t pblk -n target0 -b 0 -e 63</code></pre>\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_nvme">NVME</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Part of the nvme-user suite</p></div>\r
-</div>\r
-</div>\r
-</div>\r
-<div id="footnotes"><hr /></div>\r
-<div id="footer">\r
-<div id="footer-text">\r
-Last updated\r
- 2019-11-08 08:41:30 JST\r
-</div>\r
-</div>\r
-</body>\r
-</html>\r
diff --git a/Documentation/nvme-lnvm-create.txt b/Documentation/nvme-lnvm-create.txt
deleted file mode 100644 (file)
index 3c9109d..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-nvme-lnvm-create(1)
-===================
-
-NAME
-----
-nvme-lnvm-create - Instantiate a target on top of a LightNVM enabled device
-
-SYNOPSIS
---------
-[verse]
-'nvme lnvm-create' [--device-name=<DEVICE> | -d <DEVICE>]
-                       [--target-name=<TARGET> | -n <TARGET>]
-                       [--target-type=<TARGETTYPE> | -t <TARGETTYPE>]
-                       [--lun-begin <NUM> | -b <NUM>]
-                       [--lun-end <NUM> | -e <NUM>]
-
-DESCRIPTION
------------
-Instantiate a target on top of a LightNVM enabled device. This exposes the
-physical for the user to use.
-
-The target name is the name of which the media is exposed as in
-/dev/<targetname>
-
-The target type is the target to be instantiated. Typically pblk or rrpc.
-
-LUN begin and end defines the range of LUNs to use for a target instantiation.
-
-OPTIONS
--------
---device-name=<DEVICE>::
--d <DEVICE>::
-       Device name to initialize.
-
---target-name=<TARGET>::
--n <TARGET>::
-       Target name of the device to initialize. For example: target0.
-
---target-type=<TARGETTYPE>::
--t <TARGETTYPE>::
-       Target type of the device to use. For example: pblk
-
---lun-begin <NUM>::
--b <NUM>::
-       Begin LUN id offset to use for target
-
---lun-end <NUM>::
--e <NUM>::
-       End LUN id offset to use for target
-
-EXAMPLES
---------
-* Initialize nvme0n1 with pblk target with 64 LUNs.
-------------
-# nvme lnvm-create -d nvme0n1 -t pblk -n target0 -b 0 -e 63
-------------
-
-NVME
-----
-Part of the nvme-user suite
diff --git a/Documentation/nvme-lnvm-diag-bbtbl.1 b/Documentation/nvme-lnvm-diag-bbtbl.1
deleted file mode 100644 (file)
index 398dc80..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-'\" t
-.\"     Title: nvme-lnvm-diag-bbtbl
-.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
-.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 10/20/2020
-.\"    Manual: NVMe Manual
-.\"    Source: NVMe
-.\"  Language: English
-.\"
-.TH "NVME\-LNVM\-DIAG\-BB" "1" "10/20/2020" "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-lnvm-diag-bbtbl \- Diagnose the bad block table
-.SH "SYNOPSIS"
-.sp
-.nf
-\fInvme lnvm\-diag\-bbtbl\fR [\-\-namespace\-id=<NUM> | \-n <NUM>]
-                        [\-\-channel\-id=<CHID> | \-c <CHID>]
-                        [\-\-lun\-id=<LUNID> | \-l <LUNID>]
-                        [\-\-raw\-binary | \-b]
-.fi
-.SH "DESCRIPTION"
-.sp
-Retrieve the bad block table for a given channel and lun\&.
-.sp
-The statistics will be shown in the default case, and the actual output bad block information can be retrieved when \-\-raw\-binary is passed\&.
-.sp
-The raw binary output follows this format:
-.sp
-Channel 0, LUN0 (Dual plane flash)
-.sp
-Byte 0 \(-> Plane 0, Block 0 Byte 1 \(-> Plane 1, Block 0 Byte 2 \(-> Plane 0, Block 1 \&...
-.SH "OPTIONS"
-.PP
-\-\-namespace\-id=<NUM>, \-n <NUM>
-.RS 4
-Namespace id to use
-.RE
-.PP
-\-\-channel\-id=<NUM>, \-c
-.RS 4
-Channel id
-.RE
-.PP
-\-\-lun\-id=<NUM>, \-l
-.RS 4
-LUN id
-.RE
-.PP
-\-\-raw\-binary, \-b
-.RS 4
-Returns the bad block table in binary form without statistics\&.
-.RE
-.SH "EXAMPLES"
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-Retrieve bad block table statistics for physical device nvme0, channel 0, and lun 0:
-.RE
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-# nvme lnvm\-diag\-bbtbl /dev/nvme0 \-c 0 \-n 0
-.fi
-.if n \{\
-.RE
-.\}
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-Display the bad block table in raw form without statistics for same query:
-.RE
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-# nvme lnvm\-diag\-bbtbl /dev/nvme0 \-c 0 \-n 0 \-b | hexdump
-.fi
-.if n \{\
-.RE
-.\}
-.SH "NVME"
-.sp
-Part of the nvme\-user suite
diff --git a/Documentation/nvme-lnvm-diag-bbtbl.html b/Documentation/nvme-lnvm-diag-bbtbl.html
deleted file mode 100644 (file)
index 4b177c7..0000000
+++ /dev/null
@@ -1,864 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
-    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
-<head>\r
-<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc 8.6.8" />\r
-<title>nvme-lnvm-diag-bbtbl(1)</title>\r
-<style type="text/css">\r
-/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
-\r
-/* Default font. */\r
-body {\r
-  font-family: Georgia,serif;\r
-}\r
-\r
-/* Title font. */\r
-h1, h2, h3, h4, h5, h6,\r
-div.title, caption.title,\r
-thead, p.table.header,\r
-#toctitle,\r
-#author, #revnumber, #revdate, #revremark,\r
-#footer {\r
-  font-family: Arial,Helvetica,sans-serif;\r
-}\r
-\r
-body {\r
-  margin: 1em 5% 1em 5%;\r
-}\r
-\r
-a {\r
-  color: blue;\r
-  text-decoration: underline;\r
-}\r
-a:visited {\r
-  color: fuchsia;\r
-}\r
-\r
-em {\r
-  font-style: italic;\r
-  color: navy;\r
-}\r
-\r
-strong {\r
-  font-weight: bold;\r
-  color: #083194;\r
-}\r
-\r
-h1, h2, h3, h4, h5, h6 {\r
-  color: #527bbd;\r
-  margin-top: 1.2em;\r
-  margin-bottom: 0.5em;\r
-  line-height: 1.3;\r
-}\r
-\r
-h1, h2, h3 {\r
-  border-bottom: 2px solid silver;\r
-}\r
-h2 {\r
-  padding-top: 0.5em;\r
-}\r
-h3 {\r
-  float: left;\r
-}\r
-h3 + * {\r
-  clear: left;\r
-}\r
-h5 {\r
-  font-size: 1.0em;\r
-}\r
-\r
-div.sectionbody {\r
-  margin-left: 0;\r
-}\r
-\r
-hr {\r
-  border: 1px solid silver;\r
-}\r
-\r
-p {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0.5em;\r
-}\r
-\r
-ul, ol, li > p {\r
-  margin-top: 0;\r
-}\r
-ul > li     { color: #aaa; }\r
-ul > li > * { color: black; }\r
-\r
-.monospaced, code, pre {\r
-  font-family: "Courier New", Courier, monospace;\r
-  font-size: inherit;\r
-  color: navy;\r
-  padding: 0;\r
-  margin: 0;\r
-}\r
-\r
-\r
-#author {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  font-size: 1.1em;\r
-}\r
-#email {\r
-}\r
-#revnumber, #revdate, #revremark {\r
-}\r
-\r
-#footer {\r
-  font-size: small;\r
-  border-top: 2px solid silver;\r
-  padding-top: 0.5em;\r
-  margin-top: 4.0em;\r
-}\r
-#footer-text {\r
-  float: left;\r
-  padding-bottom: 0.5em;\r
-}\r
-#footer-badges {\r
-  float: right;\r
-  padding-bottom: 0.5em;\r
-}\r
-\r
-#preamble {\r
-  margin-top: 1.5em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.imageblock, div.exampleblock, div.verseblock,\r
-div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
-div.admonitionblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.admonitionblock {\r
-  margin-top: 2.0em;\r
-  margin-bottom: 2.0em;\r
-  margin-right: 10%;\r
-  color: #606060;\r
-}\r
-\r
-div.content { /* Block element content. */\r
-  padding: 0;\r
-}\r
-\r
-/* Block element titles. */\r
-div.title, caption.title {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  text-align: left;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.5em;\r
-}\r
-div.title + * {\r
-  margin-top: 0;\r
-}\r
-\r
-td div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content + div.title {\r
-  margin-top: 0.0em;\r
-}\r
-\r
-div.sidebarblock > div.content {\r
-  background: #ffffee;\r
-  border: 1px solid #dddddd;\r
-  border-left: 4px solid #f0f0f0;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.listingblock > div.content {\r
-  border: 1px solid #dddddd;\r
-  border-left: 5px solid #f0f0f0;\r
-  background: #f8f8f8;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.quoteblock, div.verseblock {\r
-  padding-left: 1.0em;\r
-  margin-left: 1.0em;\r
-  margin-right: 10%;\r
-  border-left: 5px solid #f0f0f0;\r
-  color: #888;\r
-}\r
-\r
-div.quoteblock > div.attribution {\r
-  padding-top: 0.5em;\r
-  text-align: right;\r
-}\r
-\r
-div.verseblock > pre.content {\r
-  font-family: inherit;\r
-  font-size: inherit;\r
-}\r
-div.verseblock > div.attribution {\r
-  padding-top: 0.75em;\r
-  text-align: left;\r
-}\r
-/* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
-div.verseblock + div.attribution {\r
-  text-align: left;\r
-}\r
-\r
-div.admonitionblock .icon {\r
-  vertical-align: top;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  text-decoration: underline;\r
-  color: #527bbd;\r
-  padding-right: 0.5em;\r
-}\r
-div.admonitionblock td.content {\r
-  padding-left: 0.5em;\r
-  border-left: 3px solid #dddddd;\r
-}\r
-\r
-div.exampleblock > div.content {\r
-  border-left: 3px solid #dddddd;\r
-  padding-left: 0.5em;\r
-}\r
-\r
-div.imageblock div.content { padding-left: 0; }\r
-span.image img { border-style: none; }\r
-a.image:visited { color: white; }\r
-\r
-dl {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-dt {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0;\r
-  font-style: normal;\r
-  color: navy;\r
-}\r
-dd > *:first-child {\r
-  margin-top: 0.1em;\r
-}\r
-\r
-ul, ol {\r
-    list-style-position: outside;\r
-}\r
-ol.arabic {\r
-  list-style-type: decimal;\r
-}\r
-ol.loweralpha {\r
-  list-style-type: lower-alpha;\r
-}\r
-ol.upperalpha {\r
-  list-style-type: upper-alpha;\r
-}\r
-ol.lowerroman {\r
-  list-style-type: lower-roman;\r
-}\r
-ol.upperroman {\r
-  list-style-type: upper-roman;\r
-}\r
-\r
-div.compact ul, div.compact ol,\r
-div.compact p, div.compact p,\r
-div.compact div, div.compact div {\r
-  margin-top: 0.1em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-tfoot {\r
-  font-weight: bold;\r
-}\r
-td > div.verse {\r
-  white-space: pre;\r
-}\r
-\r
-div.hdlist {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-div.hdlist tr {\r
-  padding-bottom: 15px;\r
-}\r
-dt.hdlist1.strong, td.hdlist1.strong {\r
-  font-weight: bold;\r
-}\r
-td.hdlist1 {\r
-  vertical-align: top;\r
-  font-style: normal;\r
-  padding-right: 0.8em;\r
-  color: navy;\r
-}\r
-td.hdlist2 {\r
-  vertical-align: top;\r
-}\r
-div.hdlist.compact tr {\r
-  margin: 0;\r
-  padding-bottom: 0;\r
-}\r
-\r
-.comment {\r
-  background: yellow;\r
-}\r
-\r
-.footnote, .footnoteref {\r
-  font-size: 0.8em;\r
-}\r
-\r
-span.footnote, span.footnoteref {\r
-  vertical-align: super;\r
-}\r
-\r
-#footnotes {\r
-  margin: 20px 0 20px 0;\r
-  padding: 7px 0 0 0;\r
-}\r
-\r
-#footnotes div.footnote {\r
-  margin: 0 0 5px 0;\r
-}\r
-\r
-#footnotes hr {\r
-  border: none;\r
-  border-top: 1px solid silver;\r
-  height: 1px;\r
-  text-align: left;\r
-  margin-left: 0;\r
-  width: 20%;\r
-  min-width: 100px;\r
-}\r
-\r
-div.colist td {\r
-  padding-right: 0.5em;\r
-  padding-bottom: 0.3em;\r
-  vertical-align: top;\r
-}\r
-div.colist td img {\r
-  margin-top: 0.3em;\r
-}\r
-\r
-@media print {\r
-  #footer-badges { display: none; }\r
-}\r
-\r
-#toc {\r
-  margin-bottom: 2.5em;\r
-}\r
-\r
-#toctitle {\r
-  color: #527bbd;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
-  margin-top: 0;\r
-  margin-bottom: 0;\r
-}\r
-div.toclevel2 {\r
-  margin-left: 2em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel3 {\r
-  margin-left: 4em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel4 {\r
-  margin-left: 6em;\r
-  font-size: 0.9em;\r
-}\r
-\r
-span.aqua { color: aqua; }\r
-span.black { color: black; }\r
-span.blue { color: blue; }\r
-span.fuchsia { color: fuchsia; }\r
-span.gray { color: gray; }\r
-span.green { color: green; }\r
-span.lime { color: lime; }\r
-span.maroon { color: maroon; }\r
-span.navy { color: navy; }\r
-span.olive { color: olive; }\r
-span.purple { color: purple; }\r
-span.red { color: red; }\r
-span.silver { color: silver; }\r
-span.teal { color: teal; }\r
-span.white { color: white; }\r
-span.yellow { color: yellow; }\r
-\r
-span.aqua-background { background: aqua; }\r
-span.black-background { background: black; }\r
-span.blue-background { background: blue; }\r
-span.fuchsia-background { background: fuchsia; }\r
-span.gray-background { background: gray; }\r
-span.green-background { background: green; }\r
-span.lime-background { background: lime; }\r
-span.maroon-background { background: maroon; }\r
-span.navy-background { background: navy; }\r
-span.olive-background { background: olive; }\r
-span.purple-background { background: purple; }\r
-span.red-background { background: red; }\r
-span.silver-background { background: silver; }\r
-span.teal-background { background: teal; }\r
-span.white-background { background: white; }\r
-span.yellow-background { background: yellow; }\r
-\r
-span.big { font-size: 2em; }\r
-span.small { font-size: 0.6em; }\r
-\r
-span.underline { text-decoration: underline; }\r
-span.overline { text-decoration: overline; }\r
-span.line-through { text-decoration: line-through; }\r
-\r
-div.unbreakable { page-break-inside: avoid; }\r
-\r
-\r
-/*\r
- * xhtml11 specific\r
- *\r
- * */\r
-\r
-div.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.tableblock > table {\r
-  border: 3px solid #527bbd;\r
-}\r
-thead, p.table.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.table {\r
-  margin-top: 0;\r
-}\r
-/* Because the table frame attribute is overridden by CSS in most browsers. */\r
-div.tableblock > table[frame="void"] {\r
-  border-style: none;\r
-}\r
-div.tableblock > table[frame="hsides"] {\r
-  border-left-style: none;\r
-  border-right-style: none;\r
-}\r
-div.tableblock > table[frame="vsides"] {\r
-  border-top-style: none;\r
-  border-bottom-style: none;\r
-}\r
-\r
-\r
-/*\r
- * html5 specific\r
- *\r
- * */\r
-\r
-table.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-thead, p.tableblock.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.tableblock {\r
-  margin-top: 0;\r
-}\r
-table.tableblock {\r
-  border-width: 3px;\r
-  border-spacing: 0px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-  border-collapse: collapse;\r
-}\r
-th.tableblock, td.tableblock {\r
-  border-width: 1px;\r
-  padding: 4px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-}\r
-\r
-table.tableblock.frame-topbot {\r
-  border-left-style: hidden;\r
-  border-right-style: hidden;\r
-}\r
-table.tableblock.frame-sides {\r
-  border-top-style: hidden;\r
-  border-bottom-style: hidden;\r
-}\r
-table.tableblock.frame-none {\r
-  border-style: hidden;\r
-}\r
-\r
-th.tableblock.halign-left, td.tableblock.halign-left {\r
-  text-align: left;\r
-}\r
-th.tableblock.halign-center, td.tableblock.halign-center {\r
-  text-align: center;\r
-}\r
-th.tableblock.halign-right, td.tableblock.halign-right {\r
-  text-align: right;\r
-}\r
-\r
-th.tableblock.valign-top, td.tableblock.valign-top {\r
-  vertical-align: top;\r
-}\r
-th.tableblock.valign-middle, td.tableblock.valign-middle {\r
-  vertical-align: middle;\r
-}\r
-th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
-  vertical-align: bottom;\r
-}\r
-\r
-\r
-/*\r
- * manpage specific\r
- *\r
- * */\r
-\r
-body.manpage h1 {\r
-  padding-top: 0.5em;\r
-  padding-bottom: 0.5em;\r
-  border-top: 2px solid silver;\r
-  border-bottom: 2px solid silver;\r
-}\r
-body.manpage h2 {\r
-  border-style: none;\r
-}\r
-body.manpage div.sectionbody {\r
-  margin-left: 3em;\r
-}\r
-\r
-@media print {\r
-  body.manpage div#toc { display: none; }\r
-}\r
-\r
-\r
-</style>\r
-<script type="text/javascript">\r
-/*<![CDATA[*/\r
-var asciidoc = {  // Namespace.\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Table Of Contents generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Author: Mihai Bazon, September 2002\r
- * http://students.infoiasi.ro/~mishoo\r
- *\r
- * Table Of Content generator\r
- * Version: 0.4\r
- *\r
- * Feel free to use this script under the terms of the GNU General Public\r
- * License, as long as you do not remove or alter this notice.\r
- */\r
-\r
- /* modified by Troy D. Hanson, September 2006. License: GPL */\r
- /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
-\r
-// toclevels = 1..4.\r
-toc: function (toclevels) {\r
-\r
-  function getText(el) {\r
-    var text = "";\r
-    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
-        text += i.data;\r
-      else if (i.firstChild != null)\r
-        text += getText(i);\r
-    }\r
-    return text;\r
-  }\r
-\r
-  function TocEntry(el, text, toclevel) {\r
-    this.element = el;\r
-    this.text = text;\r
-    this.toclevel = toclevel;\r
-  }\r
-\r
-  function tocEntries(el, toclevels) {\r
-    var result = new Array;\r
-    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
-    // Function that scans the DOM tree for header elements (the DOM2\r
-    // nodeIterator API would be a better technique but not supported by all\r
-    // browsers).\r
-    var iterate = function (el) {\r
-      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
-          var mo = re.exec(i.tagName);\r
-          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
-            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
-          }\r
-          iterate(i);\r
-        }\r
-      }\r
-    }\r
-    iterate(el);\r
-    return result;\r
-  }\r
-\r
-  var toc = document.getElementById("toc");\r
-  if (!toc) {\r
-    return;\r
-  }\r
-\r
-  // Delete existing TOC entries in case we're reloading the TOC.\r
-  var tocEntriesToRemove = [];\r
-  var i;\r
-  for (i = 0; i < toc.childNodes.length; i++) {\r
-    var entry = toc.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div'\r
-     && entry.getAttribute("class")\r
-     && entry.getAttribute("class").match(/^toclevel/))\r
-      tocEntriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
-    toc.removeChild(tocEntriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild TOC entries.\r
-  var entries = tocEntries(document.getElementById("content"), toclevels);\r
-  for (var i = 0; i < entries.length; ++i) {\r
-    var entry = entries[i];\r
-    if (entry.element.id == "")\r
-      entry.element.id = "_toc_" + i;\r
-    var a = document.createElement("a");\r
-    a.href = "#" + entry.element.id;\r
-    a.appendChild(document.createTextNode(entry.text));\r
-    var div = document.createElement("div");\r
-    div.appendChild(a);\r
-    div.className = "toclevel" + entry.toclevel;\r
-    toc.appendChild(div);\r
-  }\r
-  if (entries.length == 0)\r
-    toc.parentNode.removeChild(toc);\r
-},\r
-\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Footnotes generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Based on footnote generation code from:\r
- * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
- */\r
-\r
-footnotes: function () {\r
-  // Delete existing footnote entries in case we're reloading the footnodes.\r
-  var i;\r
-  var noteholder = document.getElementById("footnotes");\r
-  if (!noteholder) {\r
-    return;\r
-  }\r
-  var entriesToRemove = [];\r
-  for (i = 0; i < noteholder.childNodes.length; i++) {\r
-    var entry = noteholder.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
-      entriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < entriesToRemove.length; i++) {\r
-    noteholder.removeChild(entriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild footnote entries.\r
-  var cont = document.getElementById("content");\r
-  var spans = cont.getElementsByTagName("span");\r
-  var refs = {};\r
-  var n = 0;\r
-  for (i=0; i<spans.length; i++) {\r
-    if (spans[i].className == "footnote") {\r
-      n++;\r
-      var note = spans[i].getAttribute("data-note");\r
-      if (!note) {\r
-        // Use [\s\S] in place of . so multi-line matches work.\r
-        // Because JavaScript has no s (dotall) regex flag.\r
-        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
-        spans[i].innerHTML =\r
-          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-        spans[i].setAttribute("data-note", note);\r
-      }\r
-      noteholder.innerHTML +=\r
-        "<div class='footnote' id='_footnote_" + n + "'>" +\r
-        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
-        n + "</a>. " + note + "</div>";\r
-      var id =spans[i].getAttribute("id");\r
-      if (id != null) refs["#"+id] = n;\r
-    }\r
-  }\r
-  if (n == 0)\r
-    noteholder.parentNode.removeChild(noteholder);\r
-  else {\r
-    // Process footnoterefs.\r
-    for (i=0; i<spans.length; i++) {\r
-      if (spans[i].className == "footnoteref") {\r
-        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
-        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
-        n = refs[href];\r
-        spans[i].innerHTML =\r
-          "[<a href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-      }\r
-    }\r
-  }\r
-},\r
-\r
-install: function(toclevels) {\r
-  var timerId;\r
-\r
-  function reinstall() {\r
-    asciidoc.footnotes();\r
-    if (toclevels) {\r
-      asciidoc.toc(toclevels);\r
-    }\r
-  }\r
-\r
-  function reinstallAndRemoveTimer() {\r
-    clearInterval(timerId);\r
-    reinstall();\r
-  }\r
-\r
-  timerId = setInterval(reinstall, 500);\r
-  if (document.addEventListener)\r
-    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
-  else\r
-    window.onload = reinstallAndRemoveTimer;\r
-}\r
-\r
-}\r
-asciidoc.install();\r
-/*]]>*/\r
-</script>\r
-</head>\r
-<body class="manpage">\r
-<div id="header">\r
-<h1>\r
-nvme-lnvm-diag-bbtbl(1) Manual Page\r
-</h1>\r
-<h2>NAME</h2>\r
-<div class="sectionbody">\r
-<p>nvme-lnvm-diag-bbtbl -\r
-   Diagnose the bad block table\r
-</p>\r
-</div>\r
-</div>\r
-<div id="content">\r
-<div class="sect1">\r
-<h2 id="_synopsis">SYNOPSIS</h2>\r
-<div class="sectionbody">\r
-<div class="verseblock">\r
-<pre class="content"><em>nvme lnvm-diag-bbtbl</em> [--namespace-id=&lt;NUM&gt; | -n &lt;NUM&gt;]\r
-                        [--channel-id=&lt;CHID&gt; | -c &lt;CHID&gt;]\r
-                        [--lun-id=&lt;LUNID&gt; | -l &lt;LUNID&gt;]\r
-                        [--raw-binary | -b]</pre>\r
-<div class="attribution">\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_description">DESCRIPTION</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Retrieve the bad block table for a given channel and lun.</p></div>\r
-<div class="paragraph"><p>The statistics will be shown in the default case, and the actual output bad\r
-block information can be retrieved when --raw-binary is passed.</p></div>\r
-<div class="paragraph"><p>The raw binary output follows this format:</p></div>\r
-<div class="paragraph"><p>Channel 0, LUN0 (Dual plane flash)</p></div>\r
-<div class="paragraph"><p>Byte 0 &#8594; Plane 0, Block 0\r
-Byte 1 &#8594; Plane 1, Block 0\r
-Byte 2 &#8594; Plane 0, Block 1\r
-&#8230;</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_options">OPTIONS</h2>\r
-<div class="sectionbody">\r
-<div class="dlist"><dl>\r
-<dt class="hdlist1">\r
---namespace-id=&lt;NUM&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--n &lt;NUM&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Namespace id to use\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---channel-id=&lt;NUM&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--c\r
-</dt>\r
-<dd>\r
-<p>\r
-        Channel id\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---lun-id=&lt;NUM&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--l\r
-</dt>\r
-<dd>\r
-<p>\r
-        LUN id\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---raw-binary\r
-</dt>\r
-<dt class="hdlist1">\r
--b\r
-</dt>\r
-<dd>\r
-<p>\r
-        Returns the bad block table in binary form without statistics.\r
-</p>\r
-</dd>\r
-</dl></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_examples">EXAMPLES</h2>\r
-<div class="sectionbody">\r
-<div class="ulist"><ul>\r
-<li>\r
-<p>\r
-Retrieve bad block table statistics for physical device nvme0, channel 0, and\r
-lun 0:\r
-</p>\r
-</li>\r
-</ul></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code># nvme lnvm-diag-bbtbl /dev/nvme0 -c 0 -n 0</code></pre>\r
-</div></div>\r
-<div class="ulist"><ul>\r
-<li>\r
-<p>\r
-Display the bad block table in raw form without statistics for same query:\r
-</p>\r
-</li>\r
-</ul></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code># nvme lnvm-diag-bbtbl /dev/nvme0 -c 0 -n 0 -b | hexdump</code></pre>\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_nvme">NVME</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Part of the nvme-user suite</p></div>\r
-</div>\r
-</div>\r
-</div>\r
-<div id="footnotes"><hr /></div>\r
-<div id="footer">\r
-<div id="footer-text">\r
-Last updated 2017-02-27 10:11:58 EST\r
-</div>\r
-</div>\r
-</body>\r
-</html>\r
diff --git a/Documentation/nvme-lnvm-diag-bbtbl.txt b/Documentation/nvme-lnvm-diag-bbtbl.txt
deleted file mode 100644 (file)
index 7324807..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-nvme-lnvm-diag-bbtbl(1)
-=======================
-
-NAME
-----
-nvme-lnvm-diag-bbtbl - Diagnose the bad block table
-
-SYNOPSIS
---------
-[verse]
-'nvme lnvm-diag-bbtbl' [--namespace-id=<NUM> | -n <NUM>]
-                       [--channel-id=<CHID> | -c <CHID>]
-                       [--lun-id=<LUNID> | -l <LUNID>]
-                       [--raw-binary | -b]
-
-DESCRIPTION
------------
-Retrieve the bad block table for a given channel and lun.
-
-The statistics will be shown in the default case, and the actual output bad
-block information can be retrieved when --raw-binary is passed.
-
-The raw binary output follows this format:
-
-Channel 0, LUN0 (Dual plane flash)
-
-Byte 0 -> Plane 0, Block 0
-Byte 1 -> Plane 1, Block 0
-Byte 2 -> Plane 0, Block 1
-...
-
-OPTIONS
--------
---namespace-id=<NUM>::
--n <NUM>::
-       Namespace id to use
-
---channel-id=<NUM>::
--c::
-       Channel id
-
---lun-id=<NUM>::
--l::
-       LUN id
-
---raw-binary::
--b::
-       Returns the bad block table in binary form without statistics.
-
-EXAMPLES
---------
-* Retrieve bad block table statistics for physical device nvme0, channel 0, and
-lun 0:
-------------
-# nvme lnvm-diag-bbtbl /dev/nvme0 -c 0 -n 0
-------------
-
-* Display the bad block table in raw form without statistics for same query:
-------------
-# nvme lnvm-diag-bbtbl /dev/nvme0 -c 0 -n 0 -b | hexdump
-------------
-
-NVME
-----
-Part of the nvme-user suite
diff --git a/Documentation/nvme-lnvm-diag-set-bbtbl.1 b/Documentation/nvme-lnvm-diag-set-bbtbl.1
deleted file mode 100644 (file)
index 6d3b5a7..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-'\" t
-.\"     Title: nvme-lnvm-diag-set-bbtbl
-.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
-.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 10/20/2020
-.\"    Manual: NVMe Manual
-.\"    Source: NVMe
-.\"  Language: English
-.\"
-.TH "NVME\-LNVM\-DIAG\-SE" "1" "10/20/2020" "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-lnvm-diag-set-bbtbl \- Set a block state in the bad block table
-.SH "SYNOPSIS"
-.sp
-.nf
-\fInvme lnvm\-diag\-set\-bbtbl\fR [\-\-namespace\-id=<NUM> | \-n <NUM>]
-                        [\-\-channel\-id=<CHID> | \-c <CHID>]
-                        [\-\-lun\-id=<LUNID> | \-l <LUNID>]
-                        [\-\-plane\-id=<PLANEID> | \-p <PLANEID>]
-                        [\-\-block\-id=<BLKID> | \-b <BLKID>]
-                        [\-\-value=<NUM> | \-v <NUM>]
-.fi
-.SH "DESCRIPTION"
-.sp
-Set the bad block table for a given channel, lun, plane and block with value v\&.
-.sp
-For each block available, the status byte is read as follows:
-.sp
-0: Good block 1: Bad block 2: Grown bad block 4: Device reserved block 8: Host\-side reserved block 16: Media managed reserved block
-.SH "OPTIONS"
-.PP
-\-\-namespace\-id=<NUM>, \-n <NUM>
-.RS 4
-Namespace id to use
-.RE
-.PP
-\-\-channel\-id, \-c
-.RS 4
-Channel id
-.RE
-.PP
-\-\-lun\-id, \-l
-.RS 4
-LUN id
-.RE
-.PP
-\-\-plane\-id, \-p
-.RS 4
-Plane id
-.RE
-.PP
-\-\-block\-id, \-b
-.RS 4
-Block id
-.RE
-.SH "EXAMPLES"
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-Set channel 0, lun 0, plane 0, block 10 to bad block value 2 (grown bad) on physical device /dev/nvme0
-.RE
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-# nvme lnvm\-diag\-set\-bbtbl /dev/nvme0 \-c 0 \-l 0 \-p 0 \-b 10 \-v 2
-.fi
-.if n \{\
-.RE
-.\}
-.SH "NVME"
-.sp
-Part of the nvme\-user suite
diff --git a/Documentation/nvme-lnvm-diag-set-bbtbl.html b/Documentation/nvme-lnvm-diag-set-bbtbl.html
deleted file mode 100644 (file)
index be9d173..0000000
+++ /dev/null
@@ -1,869 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
-    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
-<head>\r
-<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc 8.6.10" />\r
-<title>nvme-lnvm-diag-set-bbtbl(1)</title>\r
-<style type="text/css">\r
-/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
-\r
-/* Default font. */\r
-body {\r
-  font-family: Georgia,serif;\r
-}\r
-\r
-/* Title font. */\r
-h1, h2, h3, h4, h5, h6,\r
-div.title, caption.title,\r
-thead, p.table.header,\r
-#toctitle,\r
-#author, #revnumber, #revdate, #revremark,\r
-#footer {\r
-  font-family: Arial,Helvetica,sans-serif;\r
-}\r
-\r
-body {\r
-  margin: 1em 5% 1em 5%;\r
-}\r
-\r
-a {\r
-  color: blue;\r
-  text-decoration: underline;\r
-}\r
-a:visited {\r
-  color: fuchsia;\r
-}\r
-\r
-em {\r
-  font-style: italic;\r
-  color: navy;\r
-}\r
-\r
-strong {\r
-  font-weight: bold;\r
-  color: #083194;\r
-}\r
-\r
-h1, h2, h3, h4, h5, h6 {\r
-  color: #527bbd;\r
-  margin-top: 1.2em;\r
-  margin-bottom: 0.5em;\r
-  line-height: 1.3;\r
-}\r
-\r
-h1, h2, h3 {\r
-  border-bottom: 2px solid silver;\r
-}\r
-h2 {\r
-  padding-top: 0.5em;\r
-}\r
-h3 {\r
-  float: left;\r
-}\r
-h3 + * {\r
-  clear: left;\r
-}\r
-h5 {\r
-  font-size: 1.0em;\r
-}\r
-\r
-div.sectionbody {\r
-  margin-left: 0;\r
-}\r
-\r
-hr {\r
-  border: 1px solid silver;\r
-}\r
-\r
-p {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0.5em;\r
-}\r
-\r
-ul, ol, li > p {\r
-  margin-top: 0;\r
-}\r
-ul > li     { color: #aaa; }\r
-ul > li > * { color: black; }\r
-\r
-.monospaced, code, pre {\r
-  font-family: "Courier New", Courier, monospace;\r
-  font-size: inherit;\r
-  color: navy;\r
-  padding: 0;\r
-  margin: 0;\r
-}\r
-pre {\r
-  white-space: pre-wrap;\r
-}\r
-\r
-#author {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  font-size: 1.1em;\r
-}\r
-#email {\r
-}\r
-#revnumber, #revdate, #revremark {\r
-}\r
-\r
-#footer {\r
-  font-size: small;\r
-  border-top: 2px solid silver;\r
-  padding-top: 0.5em;\r
-  margin-top: 4.0em;\r
-}\r
-#footer-text {\r
-  float: left;\r
-  padding-bottom: 0.5em;\r
-}\r
-#footer-badges {\r
-  float: right;\r
-  padding-bottom: 0.5em;\r
-}\r
-\r
-#preamble {\r
-  margin-top: 1.5em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.imageblock, div.exampleblock, div.verseblock,\r
-div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
-div.admonitionblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.admonitionblock {\r
-  margin-top: 2.0em;\r
-  margin-bottom: 2.0em;\r
-  margin-right: 10%;\r
-  color: #606060;\r
-}\r
-\r
-div.content { /* Block element content. */\r
-  padding: 0;\r
-}\r
-\r
-/* Block element titles. */\r
-div.title, caption.title {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  text-align: left;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.5em;\r
-}\r
-div.title + * {\r
-  margin-top: 0;\r
-}\r
-\r
-td div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content + div.title {\r
-  margin-top: 0.0em;\r
-}\r
-\r
-div.sidebarblock > div.content {\r
-  background: #ffffee;\r
-  border: 1px solid #dddddd;\r
-  border-left: 4px solid #f0f0f0;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.listingblock > div.content {\r
-  border: 1px solid #dddddd;\r
-  border-left: 5px solid #f0f0f0;\r
-  background: #f8f8f8;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.quoteblock, div.verseblock {\r
-  padding-left: 1.0em;\r
-  margin-left: 1.0em;\r
-  margin-right: 10%;\r
-  border-left: 5px solid #f0f0f0;\r
-  color: #888;\r
-}\r
-\r
-div.quoteblock > div.attribution {\r
-  padding-top: 0.5em;\r
-  text-align: right;\r
-}\r
-\r
-div.verseblock > pre.content {\r
-  font-family: inherit;\r
-  font-size: inherit;\r
-}\r
-div.verseblock > div.attribution {\r
-  padding-top: 0.75em;\r
-  text-align: left;\r
-}\r
-/* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
-div.verseblock + div.attribution {\r
-  text-align: left;\r
-}\r
-\r
-div.admonitionblock .icon {\r
-  vertical-align: top;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  text-decoration: underline;\r
-  color: #527bbd;\r
-  padding-right: 0.5em;\r
-}\r
-div.admonitionblock td.content {\r
-  padding-left: 0.5em;\r
-  border-left: 3px solid #dddddd;\r
-}\r
-\r
-div.exampleblock > div.content {\r
-  border-left: 3px solid #dddddd;\r
-  padding-left: 0.5em;\r
-}\r
-\r
-div.imageblock div.content { padding-left: 0; }\r
-span.image img { border-style: none; vertical-align: text-bottom; }\r
-a.image:visited { color: white; }\r
-\r
-dl {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-dt {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0;\r
-  font-style: normal;\r
-  color: navy;\r
-}\r
-dd > *:first-child {\r
-  margin-top: 0.1em;\r
-}\r
-\r
-ul, ol {\r
-    list-style-position: outside;\r
-}\r
-ol.arabic {\r
-  list-style-type: decimal;\r
-}\r
-ol.loweralpha {\r
-  list-style-type: lower-alpha;\r
-}\r
-ol.upperalpha {\r
-  list-style-type: upper-alpha;\r
-}\r
-ol.lowerroman {\r
-  list-style-type: lower-roman;\r
-}\r
-ol.upperroman {\r
-  list-style-type: upper-roman;\r
-}\r
-\r
-div.compact ul, div.compact ol,\r
-div.compact p, div.compact p,\r
-div.compact div, div.compact div {\r
-  margin-top: 0.1em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-tfoot {\r
-  font-weight: bold;\r
-}\r
-td > div.verse {\r
-  white-space: pre;\r
-}\r
-\r
-div.hdlist {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-div.hdlist tr {\r
-  padding-bottom: 15px;\r
-}\r
-dt.hdlist1.strong, td.hdlist1.strong {\r
-  font-weight: bold;\r
-}\r
-td.hdlist1 {\r
-  vertical-align: top;\r
-  font-style: normal;\r
-  padding-right: 0.8em;\r
-  color: navy;\r
-}\r
-td.hdlist2 {\r
-  vertical-align: top;\r
-}\r
-div.hdlist.compact tr {\r
-  margin: 0;\r
-  padding-bottom: 0;\r
-}\r
-\r
-.comment {\r
-  background: yellow;\r
-}\r
-\r
-.footnote, .footnoteref {\r
-  font-size: 0.8em;\r
-}\r
-\r
-span.footnote, span.footnoteref {\r
-  vertical-align: super;\r
-}\r
-\r
-#footnotes {\r
-  margin: 20px 0 20px 0;\r
-  padding: 7px 0 0 0;\r
-}\r
-\r
-#footnotes div.footnote {\r
-  margin: 0 0 5px 0;\r
-}\r
-\r
-#footnotes hr {\r
-  border: none;\r
-  border-top: 1px solid silver;\r
-  height: 1px;\r
-  text-align: left;\r
-  margin-left: 0;\r
-  width: 20%;\r
-  min-width: 100px;\r
-}\r
-\r
-div.colist td {\r
-  padding-right: 0.5em;\r
-  padding-bottom: 0.3em;\r
-  vertical-align: top;\r
-}\r
-div.colist td img {\r
-  margin-top: 0.3em;\r
-}\r
-\r
-@media print {\r
-  #footer-badges { display: none; }\r
-}\r
-\r
-#toc {\r
-  margin-bottom: 2.5em;\r
-}\r
-\r
-#toctitle {\r
-  color: #527bbd;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
-  margin-top: 0;\r
-  margin-bottom: 0;\r
-}\r
-div.toclevel2 {\r
-  margin-left: 2em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel3 {\r
-  margin-left: 4em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel4 {\r
-  margin-left: 6em;\r
-  font-size: 0.9em;\r
-}\r
-\r
-span.aqua { color: aqua; }\r
-span.black { color: black; }\r
-span.blue { color: blue; }\r
-span.fuchsia { color: fuchsia; }\r
-span.gray { color: gray; }\r
-span.green { color: green; }\r
-span.lime { color: lime; }\r
-span.maroon { color: maroon; }\r
-span.navy { color: navy; }\r
-span.olive { color: olive; }\r
-span.purple { color: purple; }\r
-span.red { color: red; }\r
-span.silver { color: silver; }\r
-span.teal { color: teal; }\r
-span.white { color: white; }\r
-span.yellow { color: yellow; }\r
-\r
-span.aqua-background { background: aqua; }\r
-span.black-background { background: black; }\r
-span.blue-background { background: blue; }\r
-span.fuchsia-background { background: fuchsia; }\r
-span.gray-background { background: gray; }\r
-span.green-background { background: green; }\r
-span.lime-background { background: lime; }\r
-span.maroon-background { background: maroon; }\r
-span.navy-background { background: navy; }\r
-span.olive-background { background: olive; }\r
-span.purple-background { background: purple; }\r
-span.red-background { background: red; }\r
-span.silver-background { background: silver; }\r
-span.teal-background { background: teal; }\r
-span.white-background { background: white; }\r
-span.yellow-background { background: yellow; }\r
-\r
-span.big { font-size: 2em; }\r
-span.small { font-size: 0.6em; }\r
-\r
-span.underline { text-decoration: underline; }\r
-span.overline { text-decoration: overline; }\r
-span.line-through { text-decoration: line-through; }\r
-\r
-div.unbreakable { page-break-inside: avoid; }\r
-\r
-\r
-/*\r
- * xhtml11 specific\r
- *\r
- * */\r
-\r
-div.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.tableblock > table {\r
-  border: 3px solid #527bbd;\r
-}\r
-thead, p.table.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.table {\r
-  margin-top: 0;\r
-}\r
-/* Because the table frame attribute is overriden by CSS in most browsers. */\r
-div.tableblock > table[frame="void"] {\r
-  border-style: none;\r
-}\r
-div.tableblock > table[frame="hsides"] {\r
-  border-left-style: none;\r
-  border-right-style: none;\r
-}\r
-div.tableblock > table[frame="vsides"] {\r
-  border-top-style: none;\r
-  border-bottom-style: none;\r
-}\r
-\r
-\r
-/*\r
- * html5 specific\r
- *\r
- * */\r
-\r
-table.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-thead, p.tableblock.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.tableblock {\r
-  margin-top: 0;\r
-}\r
-table.tableblock {\r
-  border-width: 3px;\r
-  border-spacing: 0px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-  border-collapse: collapse;\r
-}\r
-th.tableblock, td.tableblock {\r
-  border-width: 1px;\r
-  padding: 4px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-}\r
-\r
-table.tableblock.frame-topbot {\r
-  border-left-style: hidden;\r
-  border-right-style: hidden;\r
-}\r
-table.tableblock.frame-sides {\r
-  border-top-style: hidden;\r
-  border-bottom-style: hidden;\r
-}\r
-table.tableblock.frame-none {\r
-  border-style: hidden;\r
-}\r
-\r
-th.tableblock.halign-left, td.tableblock.halign-left {\r
-  text-align: left;\r
-}\r
-th.tableblock.halign-center, td.tableblock.halign-center {\r
-  text-align: center;\r
-}\r
-th.tableblock.halign-right, td.tableblock.halign-right {\r
-  text-align: right;\r
-}\r
-\r
-th.tableblock.valign-top, td.tableblock.valign-top {\r
-  vertical-align: top;\r
-}\r
-th.tableblock.valign-middle, td.tableblock.valign-middle {\r
-  vertical-align: middle;\r
-}\r
-th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
-  vertical-align: bottom;\r
-}\r
-\r
-\r
-/*\r
- * manpage specific\r
- *\r
- * */\r
-\r
-body.manpage h1 {\r
-  padding-top: 0.5em;\r
-  padding-bottom: 0.5em;\r
-  border-top: 2px solid silver;\r
-  border-bottom: 2px solid silver;\r
-}\r
-body.manpage h2 {\r
-  border-style: none;\r
-}\r
-body.manpage div.sectionbody {\r
-  margin-left: 3em;\r
-}\r
-\r
-@media print {\r
-  body.manpage div#toc { display: none; }\r
-}\r
-\r
-\r
-</style>\r
-<script type="text/javascript">\r
-/*<![CDATA[*/\r
-var asciidoc = {  // Namespace.\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Table Of Contents generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Author: Mihai Bazon, September 2002\r
- * http://students.infoiasi.ro/~mishoo\r
- *\r
- * Table Of Content generator\r
- * Version: 0.4\r
- *\r
- * Feel free to use this script under the terms of the GNU General Public\r
- * License, as long as you do not remove or alter this notice.\r
- */\r
-\r
- /* modified by Troy D. Hanson, September 2006. License: GPL */\r
- /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
-\r
-// toclevels = 1..4.\r
-toc: function (toclevels) {\r
-\r
-  function getText(el) {\r
-    var text = "";\r
-    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
-        text += i.data;\r
-      else if (i.firstChild != null)\r
-        text += getText(i);\r
-    }\r
-    return text;\r
-  }\r
-\r
-  function TocEntry(el, text, toclevel) {\r
-    this.element = el;\r
-    this.text = text;\r
-    this.toclevel = toclevel;\r
-  }\r
-\r
-  function tocEntries(el, toclevels) {\r
-    var result = new Array;\r
-    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
-    // Function that scans the DOM tree for header elements (the DOM2\r
-    // nodeIterator API would be a better technique but not supported by all\r
-    // browsers).\r
-    var iterate = function (el) {\r
-      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
-          var mo = re.exec(i.tagName);\r
-          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
-            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
-          }\r
-          iterate(i);\r
-        }\r
-      }\r
-    }\r
-    iterate(el);\r
-    return result;\r
-  }\r
-\r
-  var toc = document.getElementById("toc");\r
-  if (!toc) {\r
-    return;\r
-  }\r
-\r
-  // Delete existing TOC entries in case we're reloading the TOC.\r
-  var tocEntriesToRemove = [];\r
-  var i;\r
-  for (i = 0; i < toc.childNodes.length; i++) {\r
-    var entry = toc.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div'\r
-     && entry.getAttribute("class")\r
-     && entry.getAttribute("class").match(/^toclevel/))\r
-      tocEntriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
-    toc.removeChild(tocEntriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild TOC entries.\r
-  var entries = tocEntries(document.getElementById("content"), toclevels);\r
-  for (var i = 0; i < entries.length; ++i) {\r
-    var entry = entries[i];\r
-    if (entry.element.id == "")\r
-      entry.element.id = "_toc_" + i;\r
-    var a = document.createElement("a");\r
-    a.href = "#" + entry.element.id;\r
-    a.appendChild(document.createTextNode(entry.text));\r
-    var div = document.createElement("div");\r
-    div.appendChild(a);\r
-    div.className = "toclevel" + entry.toclevel;\r
-    toc.appendChild(div);\r
-  }\r
-  if (entries.length == 0)\r
-    toc.parentNode.removeChild(toc);\r
-},\r
-\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Footnotes generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Based on footnote generation code from:\r
- * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
- */\r
-\r
-footnotes: function () {\r
-  // Delete existing footnote entries in case we're reloading the footnodes.\r
-  var i;\r
-  var noteholder = document.getElementById("footnotes");\r
-  if (!noteholder) {\r
-    return;\r
-  }\r
-  var entriesToRemove = [];\r
-  for (i = 0; i < noteholder.childNodes.length; i++) {\r
-    var entry = noteholder.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
-      entriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < entriesToRemove.length; i++) {\r
-    noteholder.removeChild(entriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild footnote entries.\r
-  var cont = document.getElementById("content");\r
-  var spans = cont.getElementsByTagName("span");\r
-  var refs = {};\r
-  var n = 0;\r
-  for (i=0; i<spans.length; i++) {\r
-    if (spans[i].className == "footnote") {\r
-      n++;\r
-      var note = spans[i].getAttribute("data-note");\r
-      if (!note) {\r
-        // Use [\s\S] in place of . so multi-line matches work.\r
-        // Because JavaScript has no s (dotall) regex flag.\r
-        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
-        spans[i].innerHTML =\r
-          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-        spans[i].setAttribute("data-note", note);\r
-      }\r
-      noteholder.innerHTML +=\r
-        "<div class='footnote' id='_footnote_" + n + "'>" +\r
-        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
-        n + "</a>. " + note + "</div>";\r
-      var id =spans[i].getAttribute("id");\r
-      if (id != null) refs["#"+id] = n;\r
-    }\r
-  }\r
-  if (n == 0)\r
-    noteholder.parentNode.removeChild(noteholder);\r
-  else {\r
-    // Process footnoterefs.\r
-    for (i=0; i<spans.length; i++) {\r
-      if (spans[i].className == "footnoteref") {\r
-        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
-        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
-        n = refs[href];\r
-        spans[i].innerHTML =\r
-          "[<a href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-      }\r
-    }\r
-  }\r
-},\r
-\r
-install: function(toclevels) {\r
-  var timerId;\r
-\r
-  function reinstall() {\r
-    asciidoc.footnotes();\r
-    if (toclevels) {\r
-      asciidoc.toc(toclevels);\r
-    }\r
-  }\r
-\r
-  function reinstallAndRemoveTimer() {\r
-    clearInterval(timerId);\r
-    reinstall();\r
-  }\r
-\r
-  timerId = setInterval(reinstall, 500);\r
-  if (document.addEventListener)\r
-    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
-  else\r
-    window.onload = reinstallAndRemoveTimer;\r
-}\r
-\r
-}\r
-asciidoc.install();\r
-/*]]>*/\r
-</script>\r
-</head>\r
-<body class="manpage">\r
-<div id="header">\r
-<h1>\r
-nvme-lnvm-diag-set-bbtbl(1) Manual Page\r
-</h1>\r
-<h2>NAME</h2>\r
-<div class="sectionbody">\r
-<p>nvme-lnvm-diag-set-bbtbl -\r
-   Set a block state in the bad block table\r
-</p>\r
-</div>\r
-</div>\r
-<div id="content">\r
-<div class="sect1">\r
-<h2 id="_synopsis">SYNOPSIS</h2>\r
-<div class="sectionbody">\r
-<div class="verseblock">\r
-<pre class="content"><em>nvme lnvm-diag-set-bbtbl</em> [--namespace-id=&lt;NUM&gt; | -n &lt;NUM&gt;]\r
-                        [--channel-id=&lt;CHID&gt; | -c &lt;CHID&gt;]\r
-                        [--lun-id=&lt;LUNID&gt; | -l &lt;LUNID&gt;]\r
-                        [--plane-id=&lt;PLANEID&gt; | -p &lt;PLANEID&gt;]\r
-                        [--block-id=&lt;BLKID&gt; | -b &lt;BLKID&gt;]\r
-                        [--value=&lt;NUM&gt; | -v &lt;NUM&gt;]</pre>\r
-<div class="attribution">\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_description">DESCRIPTION</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Set the bad block table for a given channel, lun, plane and block with value v.</p></div>\r
-<div class="paragraph"><p>For each block available, the status byte is read as follows:</p></div>\r
-<div class="paragraph"><p>0: Good block\r
-1: Bad block\r
-2: Grown bad block\r
-4: Device reserved block\r
-8: Host-side reserved block\r
-16: Media managed reserved block</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_options">OPTIONS</h2>\r
-<div class="sectionbody">\r
-<div class="dlist"><dl>\r
-<dt class="hdlist1">\r
---namespace-id=&lt;NUM&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--n &lt;NUM&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Namespace id to use\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---channel-id\r
-</dt>\r
-<dt class="hdlist1">\r
--c\r
-</dt>\r
-<dd>\r
-<p>\r
-        Channel id\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---lun-id\r
-</dt>\r
-<dt class="hdlist1">\r
--l\r
-</dt>\r
-<dd>\r
-<p>\r
-        LUN id\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---plane-id\r
-</dt>\r
-<dt class="hdlist1">\r
--p\r
-</dt>\r
-<dd>\r
-<p>\r
-        Plane id\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---block-id\r
-</dt>\r
-<dt class="hdlist1">\r
--b\r
-</dt>\r
-<dd>\r
-<p>\r
-        Block id\r
-</p>\r
-</dd>\r
-</dl></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_examples">EXAMPLES</h2>\r
-<div class="sectionbody">\r
-<div class="ulist"><ul>\r
-<li>\r
-<p>\r
-Set channel 0, lun 0, plane 0, block 10 to bad block value 2 (grown bad)\r
-  on physical device /dev/nvme0\r
-</p>\r
-</li>\r
-</ul></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code># nvme lnvm-diag-set-bbtbl /dev/nvme0 -c 0 -l 0 -p 0 -b 10 -v 2</code></pre>\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_nvme">NVME</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Part of the nvme-user suite</p></div>\r
-</div>\r
-</div>\r
-</div>\r
-<div id="footnotes"><hr /></div>\r
-<div id="footer">\r
-<div id="footer-text">\r
-Last updated\r
- 2019-11-08 02:18:28 JST\r
-</div>\r
-</div>\r
-</body>\r
-</html>\r
diff --git a/Documentation/nvme-lnvm-diag-set-bbtbl.txt b/Documentation/nvme-lnvm-diag-set-bbtbl.txt
deleted file mode 100644 (file)
index f5dd004..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-nvme-lnvm-diag-set-bbtbl(1)
-===========================
-
-NAME
-----
-nvme-lnvm-diag-set-bbtbl - Set a block state in the bad block table
-
-SYNOPSIS
---------
-[verse]
-'nvme lnvm-diag-set-bbtbl' [--namespace-id=<NUM> | -n <NUM>]
-                       [--channel-id=<CHID> | -c <CHID>]
-                       [--lun-id=<LUNID> | -l <LUNID>]
-                       [--plane-id=<PLANEID> | -p <PLANEID>]
-                       [--block-id=<BLKID> | -b <BLKID>]
-                       [--value=<NUM> | -v <NUM>]
-
-DESCRIPTION
------------
-Set the bad block table for a given channel, lun, plane and block with value v.
-
-For each block available, the status byte is read as follows:
-
-0: Good block
-1: Bad block
-2: Grown bad block
-4: Device reserved block
-8: Host-side reserved block
-16: Media managed reserved block
-
-OPTIONS
--------
---namespace-id=<NUM>::
--n <NUM>::
-       Namespace id to use
-
---channel-id::
--c::
-       Channel id
-
---lun-id::
--l::
-       LUN id
-
---plane-id::
--p::
-       Plane id
-
---block-id::
--b::
-       Block id
-
-EXAMPLES
---------
-* Set channel 0, lun 0, plane 0, block 10 to bad block value 2 (grown bad)
-  on physical device /dev/nvme0
-------------
-# nvme lnvm-diag-set-bbtbl /dev/nvme0 -c 0 -l 0 -p 0 -b 10 -v 2
-------------
-
-NVME
-----
-Part of the nvme-user suite
diff --git a/Documentation/nvme-lnvm-factory.1 b/Documentation/nvme-lnvm-factory.1
deleted file mode 100644 (file)
index 0f713c2..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-'\" t
-.\"     Title: nvme-lnvm-factory
-.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
-.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 10/20/2020
-.\"    Manual: NVMe Manual
-.\"    Source: NVMe
-.\"  Language: English
-.\"
-.TH "NVME\-LNVM\-FACTORY" "1" "10/20/2020" "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-lnvm-factory \- Factory reset a LightNVM device
-.SH "SYNOPSIS"
-.sp
-.nf
-\fInvme lnvm\-factory\fR [\-\-device\-name=<DEVICE> | \-d <DEVICE>]
-                        [\-\-erase\-only\-marked | \-e]
-                        [\-\-clear\-host\-side\-blks | \-s]
-                        [\-\-clear\-bb\-blks | \-b]
-.fi
-.SH "DESCRIPTION"
-.sp
-Instantiate a target on top of a LightNVM enabled device\&. This exposes the physical for the user to use\&.
-.SH "OPTIONS"
-.PP
-\-\-device\-name=<DEVICE>, \-d <DEVICE>
-.RS 4
-Device name to factory initialize
-.RE
-.PP
-\-\-erase\-only\-marked, \-e
-.RS 4
-Erases only blocks that are marked in the bad block list
-.RE
-.PP
-\-\-clear\-host\-side\-blks, \-s
-.RS 4
-Remove host\-side bad block marks\&. This clear the media manager registration
-.RE
-.PP
-\-\-clear\-bb\-blks, \-b
-.RS 4
-Removes the grown bad block marks\&. Allowing them to be rediscovered\&.
-.RE
-.SH "EXAMPLES"
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-Factory reset of device nvme0n1
-.RE
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-# nvme lnvm\-factory \-d nvme0n1
-.fi
-.if n \{\
-.RE
-.\}
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-Complete factory reset of device nvme0n1
-.RE
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-# nvme lnvm\-factory \-d nvme0n1 \-s \-b
-.fi
-.if n \{\
-.RE
-.\}
-.SH "NVME"
-.sp
-Part of the nvme\-user suite
diff --git a/Documentation/nvme-lnvm-factory.html b/Documentation/nvme-lnvm-factory.html
deleted file mode 100644 (file)
index a93e398..0000000
+++ /dev/null
@@ -1,857 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
-    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
-<head>\r
-<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc 8.6.8" />\r
-<title>nvme-lnvm-factory(1)</title>\r
-<style type="text/css">\r
-/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
-\r
-/* Default font. */\r
-body {\r
-  font-family: Georgia,serif;\r
-}\r
-\r
-/* Title font. */\r
-h1, h2, h3, h4, h5, h6,\r
-div.title, caption.title,\r
-thead, p.table.header,\r
-#toctitle,\r
-#author, #revnumber, #revdate, #revremark,\r
-#footer {\r
-  font-family: Arial,Helvetica,sans-serif;\r
-}\r
-\r
-body {\r
-  margin: 1em 5% 1em 5%;\r
-}\r
-\r
-a {\r
-  color: blue;\r
-  text-decoration: underline;\r
-}\r
-a:visited {\r
-  color: fuchsia;\r
-}\r
-\r
-em {\r
-  font-style: italic;\r
-  color: navy;\r
-}\r
-\r
-strong {\r
-  font-weight: bold;\r
-  color: #083194;\r
-}\r
-\r
-h1, h2, h3, h4, h5, h6 {\r
-  color: #527bbd;\r
-  margin-top: 1.2em;\r
-  margin-bottom: 0.5em;\r
-  line-height: 1.3;\r
-}\r
-\r
-h1, h2, h3 {\r
-  border-bottom: 2px solid silver;\r
-}\r
-h2 {\r
-  padding-top: 0.5em;\r
-}\r
-h3 {\r
-  float: left;\r
-}\r
-h3 + * {\r
-  clear: left;\r
-}\r
-h5 {\r
-  font-size: 1.0em;\r
-}\r
-\r
-div.sectionbody {\r
-  margin-left: 0;\r
-}\r
-\r
-hr {\r
-  border: 1px solid silver;\r
-}\r
-\r
-p {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0.5em;\r
-}\r
-\r
-ul, ol, li > p {\r
-  margin-top: 0;\r
-}\r
-ul > li     { color: #aaa; }\r
-ul > li > * { color: black; }\r
-\r
-.monospaced, code, pre {\r
-  font-family: "Courier New", Courier, monospace;\r
-  font-size: inherit;\r
-  color: navy;\r
-  padding: 0;\r
-  margin: 0;\r
-}\r
-\r
-\r
-#author {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  font-size: 1.1em;\r
-}\r
-#email {\r
-}\r
-#revnumber, #revdate, #revremark {\r
-}\r
-\r
-#footer {\r
-  font-size: small;\r
-  border-top: 2px solid silver;\r
-  padding-top: 0.5em;\r
-  margin-top: 4.0em;\r
-}\r
-#footer-text {\r
-  float: left;\r
-  padding-bottom: 0.5em;\r
-}\r
-#footer-badges {\r
-  float: right;\r
-  padding-bottom: 0.5em;\r
-}\r
-\r
-#preamble {\r
-  margin-top: 1.5em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.imageblock, div.exampleblock, div.verseblock,\r
-div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
-div.admonitionblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.admonitionblock {\r
-  margin-top: 2.0em;\r
-  margin-bottom: 2.0em;\r
-  margin-right: 10%;\r
-  color: #606060;\r
-}\r
-\r
-div.content { /* Block element content. */\r
-  padding: 0;\r
-}\r
-\r
-/* Block element titles. */\r
-div.title, caption.title {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  text-align: left;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.5em;\r
-}\r
-div.title + * {\r
-  margin-top: 0;\r
-}\r
-\r
-td div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content + div.title {\r
-  margin-top: 0.0em;\r
-}\r
-\r
-div.sidebarblock > div.content {\r
-  background: #ffffee;\r
-  border: 1px solid #dddddd;\r
-  border-left: 4px solid #f0f0f0;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.listingblock > div.content {\r
-  border: 1px solid #dddddd;\r
-  border-left: 5px solid #f0f0f0;\r
-  background: #f8f8f8;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.quoteblock, div.verseblock {\r
-  padding-left: 1.0em;\r
-  margin-left: 1.0em;\r
-  margin-right: 10%;\r
-  border-left: 5px solid #f0f0f0;\r
-  color: #888;\r
-}\r
-\r
-div.quoteblock > div.attribution {\r
-  padding-top: 0.5em;\r
-  text-align: right;\r
-}\r
-\r
-div.verseblock > pre.content {\r
-  font-family: inherit;\r
-  font-size: inherit;\r
-}\r
-div.verseblock > div.attribution {\r
-  padding-top: 0.75em;\r
-  text-align: left;\r
-}\r
-/* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
-div.verseblock + div.attribution {\r
-  text-align: left;\r
-}\r
-\r
-div.admonitionblock .icon {\r
-  vertical-align: top;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  text-decoration: underline;\r
-  color: #527bbd;\r
-  padding-right: 0.5em;\r
-}\r
-div.admonitionblock td.content {\r
-  padding-left: 0.5em;\r
-  border-left: 3px solid #dddddd;\r
-}\r
-\r
-div.exampleblock > div.content {\r
-  border-left: 3px solid #dddddd;\r
-  padding-left: 0.5em;\r
-}\r
-\r
-div.imageblock div.content { padding-left: 0; }\r
-span.image img { border-style: none; }\r
-a.image:visited { color: white; }\r
-\r
-dl {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-dt {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0;\r
-  font-style: normal;\r
-  color: navy;\r
-}\r
-dd > *:first-child {\r
-  margin-top: 0.1em;\r
-}\r
-\r
-ul, ol {\r
-    list-style-position: outside;\r
-}\r
-ol.arabic {\r
-  list-style-type: decimal;\r
-}\r
-ol.loweralpha {\r
-  list-style-type: lower-alpha;\r
-}\r
-ol.upperalpha {\r
-  list-style-type: upper-alpha;\r
-}\r
-ol.lowerroman {\r
-  list-style-type: lower-roman;\r
-}\r
-ol.upperroman {\r
-  list-style-type: upper-roman;\r
-}\r
-\r
-div.compact ul, div.compact ol,\r
-div.compact p, div.compact p,\r
-div.compact div, div.compact div {\r
-  margin-top: 0.1em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-tfoot {\r
-  font-weight: bold;\r
-}\r
-td > div.verse {\r
-  white-space: pre;\r
-}\r
-\r
-div.hdlist {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-div.hdlist tr {\r
-  padding-bottom: 15px;\r
-}\r
-dt.hdlist1.strong, td.hdlist1.strong {\r
-  font-weight: bold;\r
-}\r
-td.hdlist1 {\r
-  vertical-align: top;\r
-  font-style: normal;\r
-  padding-right: 0.8em;\r
-  color: navy;\r
-}\r
-td.hdlist2 {\r
-  vertical-align: top;\r
-}\r
-div.hdlist.compact tr {\r
-  margin: 0;\r
-  padding-bottom: 0;\r
-}\r
-\r
-.comment {\r
-  background: yellow;\r
-}\r
-\r
-.footnote, .footnoteref {\r
-  font-size: 0.8em;\r
-}\r
-\r
-span.footnote, span.footnoteref {\r
-  vertical-align: super;\r
-}\r
-\r
-#footnotes {\r
-  margin: 20px 0 20px 0;\r
-  padding: 7px 0 0 0;\r
-}\r
-\r
-#footnotes div.footnote {\r
-  margin: 0 0 5px 0;\r
-}\r
-\r
-#footnotes hr {\r
-  border: none;\r
-  border-top: 1px solid silver;\r
-  height: 1px;\r
-  text-align: left;\r
-  margin-left: 0;\r
-  width: 20%;\r
-  min-width: 100px;\r
-}\r
-\r
-div.colist td {\r
-  padding-right: 0.5em;\r
-  padding-bottom: 0.3em;\r
-  vertical-align: top;\r
-}\r
-div.colist td img {\r
-  margin-top: 0.3em;\r
-}\r
-\r
-@media print {\r
-  #footer-badges { display: none; }\r
-}\r
-\r
-#toc {\r
-  margin-bottom: 2.5em;\r
-}\r
-\r
-#toctitle {\r
-  color: #527bbd;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
-  margin-top: 0;\r
-  margin-bottom: 0;\r
-}\r
-div.toclevel2 {\r
-  margin-left: 2em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel3 {\r
-  margin-left: 4em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel4 {\r
-  margin-left: 6em;\r
-  font-size: 0.9em;\r
-}\r
-\r
-span.aqua { color: aqua; }\r
-span.black { color: black; }\r
-span.blue { color: blue; }\r
-span.fuchsia { color: fuchsia; }\r
-span.gray { color: gray; }\r
-span.green { color: green; }\r
-span.lime { color: lime; }\r
-span.maroon { color: maroon; }\r
-span.navy { color: navy; }\r
-span.olive { color: olive; }\r
-span.purple { color: purple; }\r
-span.red { color: red; }\r
-span.silver { color: silver; }\r
-span.teal { color: teal; }\r
-span.white { color: white; }\r
-span.yellow { color: yellow; }\r
-\r
-span.aqua-background { background: aqua; }\r
-span.black-background { background: black; }\r
-span.blue-background { background: blue; }\r
-span.fuchsia-background { background: fuchsia; }\r
-span.gray-background { background: gray; }\r
-span.green-background { background: green; }\r
-span.lime-background { background: lime; }\r
-span.maroon-background { background: maroon; }\r
-span.navy-background { background: navy; }\r
-span.olive-background { background: olive; }\r
-span.purple-background { background: purple; }\r
-span.red-background { background: red; }\r
-span.silver-background { background: silver; }\r
-span.teal-background { background: teal; }\r
-span.white-background { background: white; }\r
-span.yellow-background { background: yellow; }\r
-\r
-span.big { font-size: 2em; }\r
-span.small { font-size: 0.6em; }\r
-\r
-span.underline { text-decoration: underline; }\r
-span.overline { text-decoration: overline; }\r
-span.line-through { text-decoration: line-through; }\r
-\r
-div.unbreakable { page-break-inside: avoid; }\r
-\r
-\r
-/*\r
- * xhtml11 specific\r
- *\r
- * */\r
-\r
-div.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.tableblock > table {\r
-  border: 3px solid #527bbd;\r
-}\r
-thead, p.table.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.table {\r
-  margin-top: 0;\r
-}\r
-/* Because the table frame attribute is overridden by CSS in most browsers. */\r
-div.tableblock > table[frame="void"] {\r
-  border-style: none;\r
-}\r
-div.tableblock > table[frame="hsides"] {\r
-  border-left-style: none;\r
-  border-right-style: none;\r
-}\r
-div.tableblock > table[frame="vsides"] {\r
-  border-top-style: none;\r
-  border-bottom-style: none;\r
-}\r
-\r
-\r
-/*\r
- * html5 specific\r
- *\r
- * */\r
-\r
-table.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-thead, p.tableblock.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.tableblock {\r
-  margin-top: 0;\r
-}\r
-table.tableblock {\r
-  border-width: 3px;\r
-  border-spacing: 0px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-  border-collapse: collapse;\r
-}\r
-th.tableblock, td.tableblock {\r
-  border-width: 1px;\r
-  padding: 4px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-}\r
-\r
-table.tableblock.frame-topbot {\r
-  border-left-style: hidden;\r
-  border-right-style: hidden;\r
-}\r
-table.tableblock.frame-sides {\r
-  border-top-style: hidden;\r
-  border-bottom-style: hidden;\r
-}\r
-table.tableblock.frame-none {\r
-  border-style: hidden;\r
-}\r
-\r
-th.tableblock.halign-left, td.tableblock.halign-left {\r
-  text-align: left;\r
-}\r
-th.tableblock.halign-center, td.tableblock.halign-center {\r
-  text-align: center;\r
-}\r
-th.tableblock.halign-right, td.tableblock.halign-right {\r
-  text-align: right;\r
-}\r
-\r
-th.tableblock.valign-top, td.tableblock.valign-top {\r
-  vertical-align: top;\r
-}\r
-th.tableblock.valign-middle, td.tableblock.valign-middle {\r
-  vertical-align: middle;\r
-}\r
-th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
-  vertical-align: bottom;\r
-}\r
-\r
-\r
-/*\r
- * manpage specific\r
- *\r
- * */\r
-\r
-body.manpage h1 {\r
-  padding-top: 0.5em;\r
-  padding-bottom: 0.5em;\r
-  border-top: 2px solid silver;\r
-  border-bottom: 2px solid silver;\r
-}\r
-body.manpage h2 {\r
-  border-style: none;\r
-}\r
-body.manpage div.sectionbody {\r
-  margin-left: 3em;\r
-}\r
-\r
-@media print {\r
-  body.manpage div#toc { display: none; }\r
-}\r
-\r
-\r
-</style>\r
-<script type="text/javascript">\r
-/*<![CDATA[*/\r
-var asciidoc = {  // Namespace.\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Table Of Contents generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Author: Mihai Bazon, September 2002\r
- * http://students.infoiasi.ro/~mishoo\r
- *\r
- * Table Of Content generator\r
- * Version: 0.4\r
- *\r
- * Feel free to use this script under the terms of the GNU General Public\r
- * License, as long as you do not remove or alter this notice.\r
- */\r
-\r
- /* modified by Troy D. Hanson, September 2006. License: GPL */\r
- /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
-\r
-// toclevels = 1..4.\r
-toc: function (toclevels) {\r
-\r
-  function getText(el) {\r
-    var text = "";\r
-    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
-        text += i.data;\r
-      else if (i.firstChild != null)\r
-        text += getText(i);\r
-    }\r
-    return text;\r
-  }\r
-\r
-  function TocEntry(el, text, toclevel) {\r
-    this.element = el;\r
-    this.text = text;\r
-    this.toclevel = toclevel;\r
-  }\r
-\r
-  function tocEntries(el, toclevels) {\r
-    var result = new Array;\r
-    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
-    // Function that scans the DOM tree for header elements (the DOM2\r
-    // nodeIterator API would be a better technique but not supported by all\r
-    // browsers).\r
-    var iterate = function (el) {\r
-      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
-          var mo = re.exec(i.tagName);\r
-          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
-            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
-          }\r
-          iterate(i);\r
-        }\r
-      }\r
-    }\r
-    iterate(el);\r
-    return result;\r
-  }\r
-\r
-  var toc = document.getElementById("toc");\r
-  if (!toc) {\r
-    return;\r
-  }\r
-\r
-  // Delete existing TOC entries in case we're reloading the TOC.\r
-  var tocEntriesToRemove = [];\r
-  var i;\r
-  for (i = 0; i < toc.childNodes.length; i++) {\r
-    var entry = toc.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div'\r
-     && entry.getAttribute("class")\r
-     && entry.getAttribute("class").match(/^toclevel/))\r
-      tocEntriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
-    toc.removeChild(tocEntriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild TOC entries.\r
-  var entries = tocEntries(document.getElementById("content"), toclevels);\r
-  for (var i = 0; i < entries.length; ++i) {\r
-    var entry = entries[i];\r
-    if (entry.element.id == "")\r
-      entry.element.id = "_toc_" + i;\r
-    var a = document.createElement("a");\r
-    a.href = "#" + entry.element.id;\r
-    a.appendChild(document.createTextNode(entry.text));\r
-    var div = document.createElement("div");\r
-    div.appendChild(a);\r
-    div.className = "toclevel" + entry.toclevel;\r
-    toc.appendChild(div);\r
-  }\r
-  if (entries.length == 0)\r
-    toc.parentNode.removeChild(toc);\r
-},\r
-\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Footnotes generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Based on footnote generation code from:\r
- * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
- */\r
-\r
-footnotes: function () {\r
-  // Delete existing footnote entries in case we're reloading the footnodes.\r
-  var i;\r
-  var noteholder = document.getElementById("footnotes");\r
-  if (!noteholder) {\r
-    return;\r
-  }\r
-  var entriesToRemove = [];\r
-  for (i = 0; i < noteholder.childNodes.length; i++) {\r
-    var entry = noteholder.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
-      entriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < entriesToRemove.length; i++) {\r
-    noteholder.removeChild(entriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild footnote entries.\r
-  var cont = document.getElementById("content");\r
-  var spans = cont.getElementsByTagName("span");\r
-  var refs = {};\r
-  var n = 0;\r
-  for (i=0; i<spans.length; i++) {\r
-    if (spans[i].className == "footnote") {\r
-      n++;\r
-      var note = spans[i].getAttribute("data-note");\r
-      if (!note) {\r
-        // Use [\s\S] in place of . so multi-line matches work.\r
-        // Because JavaScript has no s (dotall) regex flag.\r
-        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
-        spans[i].innerHTML =\r
-          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-        spans[i].setAttribute("data-note", note);\r
-      }\r
-      noteholder.innerHTML +=\r
-        "<div class='footnote' id='_footnote_" + n + "'>" +\r
-        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
-        n + "</a>. " + note + "</div>";\r
-      var id =spans[i].getAttribute("id");\r
-      if (id != null) refs["#"+id] = n;\r
-    }\r
-  }\r
-  if (n == 0)\r
-    noteholder.parentNode.removeChild(noteholder);\r
-  else {\r
-    // Process footnoterefs.\r
-    for (i=0; i<spans.length; i++) {\r
-      if (spans[i].className == "footnoteref") {\r
-        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
-        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
-        n = refs[href];\r
-        spans[i].innerHTML =\r
-          "[<a href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-      }\r
-    }\r
-  }\r
-},\r
-\r
-install: function(toclevels) {\r
-  var timerId;\r
-\r
-  function reinstall() {\r
-    asciidoc.footnotes();\r
-    if (toclevels) {\r
-      asciidoc.toc(toclevels);\r
-    }\r
-  }\r
-\r
-  function reinstallAndRemoveTimer() {\r
-    clearInterval(timerId);\r
-    reinstall();\r
-  }\r
-\r
-  timerId = setInterval(reinstall, 500);\r
-  if (document.addEventListener)\r
-    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
-  else\r
-    window.onload = reinstallAndRemoveTimer;\r
-}\r
-\r
-}\r
-asciidoc.install();\r
-/*]]>*/\r
-</script>\r
-</head>\r
-<body class="manpage">\r
-<div id="header">\r
-<h1>\r
-nvme-lnvm-factory(1) Manual Page\r
-</h1>\r
-<h2>NAME</h2>\r
-<div class="sectionbody">\r
-<p>nvme-lnvm-factory -\r
-   Factory reset a LightNVM device\r
-</p>\r
-</div>\r
-</div>\r
-<div id="content">\r
-<div class="sect1">\r
-<h2 id="_synopsis">SYNOPSIS</h2>\r
-<div class="sectionbody">\r
-<div class="verseblock">\r
-<pre class="content"><em>nvme lnvm-factory</em> [--device-name=&lt;DEVICE&gt; | -d &lt;DEVICE&gt;]\r
-                        [--erase-only-marked | -e]\r
-                        [--clear-host-side-blks | -s]\r
-                        [--clear-bb-blks | -b]</pre>\r
-<div class="attribution">\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_description">DESCRIPTION</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Instantiate a target on top of a LightNVM enabled device. This exposes the\r
-physical for the user to use.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_options">OPTIONS</h2>\r
-<div class="sectionbody">\r
-<div class="dlist"><dl>\r
-<dt class="hdlist1">\r
---device-name=&lt;DEVICE&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--d &lt;DEVICE&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Device name to factory initialize\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---erase-only-marked\r
-</dt>\r
-<dt class="hdlist1">\r
--e\r
-</dt>\r
-<dd>\r
-<p>\r
-        Erases only blocks that are marked in the bad block list\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---clear-host-side-blks\r
-</dt>\r
-<dt class="hdlist1">\r
--s\r
-</dt>\r
-<dd>\r
-<p>\r
-        Remove host-side bad block marks. This clear the media manager\r
-        registration\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---clear-bb-blks\r
-</dt>\r
-<dt class="hdlist1">\r
--b\r
-</dt>\r
-<dd>\r
-<p>\r
-        Removes the grown bad block marks. Allowing them to be rediscovered.\r
-</p>\r
-</dd>\r
-</dl></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_examples">EXAMPLES</h2>\r
-<div class="sectionbody">\r
-<div class="ulist"><ul>\r
-<li>\r
-<p>\r
-Factory reset of device nvme0n1\r
-</p>\r
-</li>\r
-</ul></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code># nvme lnvm-factory -d nvme0n1</code></pre>\r
-</div></div>\r
-<div class="ulist"><ul>\r
-<li>\r
-<p>\r
-Complete factory reset of device nvme0n1\r
-</p>\r
-</li>\r
-</ul></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code># nvme lnvm-factory -d nvme0n1 -s -b</code></pre>\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_nvme">NVME</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Part of the nvme-user suite</p></div>\r
-</div>\r
-</div>\r
-</div>\r
-<div id="footnotes"><hr /></div>\r
-<div id="footer">\r
-<div id="footer-text">\r
-Last updated 2017-02-27 10:11:58 EST\r
-</div>\r
-</div>\r
-</body>\r
-</html>\r
diff --git a/Documentation/nvme-lnvm-factory.txt b/Documentation/nvme-lnvm-factory.txt
deleted file mode 100644 (file)
index baa7a69..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-nvme-lnvm-factory(1)
-====================
-
-NAME
-----
-nvme-lnvm-factory - Factory reset a LightNVM device
-
-SYNOPSIS
---------
-[verse]
-'nvme lnvm-factory' [--device-name=<DEVICE> | -d <DEVICE>]
-                       [--erase-only-marked | -e]
-                       [--clear-host-side-blks | -s]
-                       [--clear-bb-blks | -b]
-
-DESCRIPTION
------------
-Instantiate a target on top of a LightNVM enabled device. This exposes the
-physical for the user to use.
-
-OPTIONS
--------
---device-name=<DEVICE>::
--d <DEVICE>::
-       Device name to factory initialize
-
---erase-only-marked::
--e::
-       Erases only blocks that are marked in the bad block list
-
---clear-host-side-blks::
--s::
-       Remove host-side bad block marks. This clear the media manager
-       registration
-
---clear-bb-blks::
--b::
-       Removes the grown bad block marks. Allowing them to be rediscovered.
-
-EXAMPLES
---------
-* Factory reset of device nvme0n1
-------------
-# nvme lnvm-factory -d nvme0n1
-------------
-
-* Complete factory reset of device nvme0n1
-------------
-# nvme lnvm-factory -d nvme0n1 -s -b
-------------
-
-NVME
-----
-Part of the nvme-user suite
diff --git a/Documentation/nvme-lnvm-id-ns.1 b/Documentation/nvme-lnvm-id-ns.1
deleted file mode 100644 (file)
index 8ceb34e..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-'\" t
-.\"     Title: nvme-lnvm-id-ns
-.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
-.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 12/15/2021
-.\"    Manual: NVMe Manual
-.\"    Source: NVMe
-.\"  Language: English
-.\"
-.TH "NVME\-LNVM\-ID\-NS" "1" "12/15/2021" "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-lnvm-id-ns \- Identify Geometry for LightNVM NVMe device
-.SH "SYNOPSIS"
-.sp
-.nf
-\fInvme lnvm\-id\-ns\fR <device> [\-\-namespace\-id=<nsid> | \-n <nsid>]
-                        [\-\-force ]
-                        [\-\-raw\-binary | \-b]
-                        [\-\-human\-readable | \-H]
-.fi
-.SH "DESCRIPTION"
-.sp
-Send an Identify Geometry command to the given LightNVM device, returns properties of the specified namespace in either human\-readable or binary format\&.
-.SH "OPTIONS"
-.PP
-\-\-namespace\-id=<nsid>, \-n <nsid>
-.RS 4
-Retrieve the geometry from the selected namespace\&.
-.RE
-.PP
-\-\-force
-.RS 4
-Try to read the data and assume it is a LightNVM device
-.RE
-.PP
-\-\-raw\-binary, \-b
-.RS 4
-Output the raw output
-.RE
-.PP
-\-\-human\-readable, \-H
-.RS 4
-Output the status in human readable format
-.RE
-.SH "EXAMPLES"
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-Retrieve the geometry from nvme0
-.RE
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-# nvme lnvm\-id\-ns /dev/nvme0 \-n 1
-.fi
-.if n \{\
-.RE
-.\}
-.SH "NVME"
-.sp
-Part of the nvme\-user suite
diff --git a/Documentation/nvme-lnvm-id-ns.html b/Documentation/nvme-lnvm-id-ns.html
deleted file mode 100644 (file)
index 2f35329..0000000
+++ /dev/null
@@ -1,847 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
-    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
-<head>\r
-<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc" />\r
-<title>nvme-lnvm-id-ns(1)</title>\r
-<style type="text/css">\r
-/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
-\r
-/* Default font. */\r
-body {\r
-  font-family: Georgia,serif;\r
-}\r
-\r
-/* Title font. */\r
-h1, h2, h3, h4, h5, h6,\r
-div.title, caption.title,\r
-thead, p.table.header,\r
-#toctitle,\r
-#author, #revnumber, #revdate, #revremark,\r
-#footer {\r
-  font-family: Arial,Helvetica,sans-serif;\r
-}\r
-\r
-body {\r
-  margin: 1em 5% 1em 5%;\r
-}\r
-\r
-a {\r
-  color: blue;\r
-  text-decoration: underline;\r
-}\r
-a:visited {\r
-  color: fuchsia;\r
-}\r
-\r
-em {\r
-  font-style: italic;\r
-  color: navy;\r
-}\r
-\r
-strong {\r
-  font-weight: bold;\r
-  color: #083194;\r
-}\r
-\r
-h1, h2, h3, h4, h5, h6 {\r
-  color: #527bbd;\r
-  margin-top: 1.2em;\r
-  margin-bottom: 0.5em;\r
-  line-height: 1.3;\r
-}\r
-\r
-h1, h2, h3 {\r
-  border-bottom: 2px solid silver;\r
-}\r
-h2 {\r
-  padding-top: 0.5em;\r
-}\r
-h3 {\r
-  float: left;\r
-}\r
-h3 + * {\r
-  clear: left;\r
-}\r
-h5 {\r
-  font-size: 1.0em;\r
-}\r
-\r
-div.sectionbody {\r
-  margin-left: 0;\r
-}\r
-\r
-hr {\r
-  border: 1px solid silver;\r
-}\r
-\r
-p {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0.5em;\r
-}\r
-\r
-ul, ol, li > p {\r
-  margin-top: 0;\r
-}\r
-ul > li     { color: #aaa; }\r
-ul > li > * { color: black; }\r
-\r
-.monospaced, code, pre {\r
-  font-family: "Courier New", Courier, monospace;\r
-  font-size: inherit;\r
-  color: navy;\r
-  padding: 0;\r
-  margin: 0;\r
-}\r
-pre {\r
-  white-space: pre-wrap;\r
-}\r
-\r
-#author {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  font-size: 1.1em;\r
-}\r
-#email {\r
-}\r
-#revnumber, #revdate, #revremark {\r
-}\r
-\r
-#footer {\r
-  font-size: small;\r
-  border-top: 2px solid silver;\r
-  padding-top: 0.5em;\r
-  margin-top: 4.0em;\r
-}\r
-#footer-text {\r
-  float: left;\r
-  padding-bottom: 0.5em;\r
-}\r
-#footer-badges {\r
-  float: right;\r
-  padding-bottom: 0.5em;\r
-}\r
-\r
-#preamble {\r
-  margin-top: 1.5em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.imageblock, div.exampleblock, div.verseblock,\r
-div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
-div.admonitionblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.admonitionblock {\r
-  margin-top: 2.0em;\r
-  margin-bottom: 2.0em;\r
-  margin-right: 10%;\r
-  color: #606060;\r
-}\r
-\r
-div.content { /* Block element content. */\r
-  padding: 0;\r
-}\r
-\r
-/* Block element titles. */\r
-div.title, caption.title {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  text-align: left;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.5em;\r
-}\r
-div.title + * {\r
-  margin-top: 0;\r
-}\r
-\r
-td div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content + div.title {\r
-  margin-top: 0.0em;\r
-}\r
-\r
-div.sidebarblock > div.content {\r
-  background: #ffffee;\r
-  border: 1px solid #dddddd;\r
-  border-left: 4px solid #f0f0f0;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.listingblock > div.content {\r
-  border: 1px solid #dddddd;\r
-  border-left: 5px solid #f0f0f0;\r
-  background: #f8f8f8;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.quoteblock, div.verseblock {\r
-  padding-left: 1.0em;\r
-  margin-left: 1.0em;\r
-  margin-right: 10%;\r
-  border-left: 5px solid #f0f0f0;\r
-  color: #888;\r
-}\r
-\r
-div.quoteblock > div.attribution {\r
-  padding-top: 0.5em;\r
-  text-align: right;\r
-}\r
-\r
-div.verseblock > pre.content {\r
-  font-family: inherit;\r
-  font-size: inherit;\r
-}\r
-div.verseblock > div.attribution {\r
-  padding-top: 0.75em;\r
-  text-align: left;\r
-}\r
-/* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
-div.verseblock + div.attribution {\r
-  text-align: left;\r
-}\r
-\r
-div.admonitionblock .icon {\r
-  vertical-align: top;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  text-decoration: underline;\r
-  color: #527bbd;\r
-  padding-right: 0.5em;\r
-}\r
-div.admonitionblock td.content {\r
-  padding-left: 0.5em;\r
-  border-left: 3px solid #dddddd;\r
-}\r
-\r
-div.exampleblock > div.content {\r
-  border-left: 3px solid #dddddd;\r
-  padding-left: 0.5em;\r
-}\r
-\r
-div.imageblock div.content { padding-left: 0; }\r
-span.image img { border-style: none; vertical-align: text-bottom; }\r
-a.image:visited { color: white; }\r
-\r
-dl {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-dt {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0;\r
-  font-style: normal;\r
-  color: navy;\r
-}\r
-dd > *:first-child {\r
-  margin-top: 0.1em;\r
-}\r
-\r
-ul, ol {\r
-    list-style-position: outside;\r
-}\r
-ol.arabic {\r
-  list-style-type: decimal;\r
-}\r
-ol.loweralpha {\r
-  list-style-type: lower-alpha;\r
-}\r
-ol.upperalpha {\r
-  list-style-type: upper-alpha;\r
-}\r
-ol.lowerroman {\r
-  list-style-type: lower-roman;\r
-}\r
-ol.upperroman {\r
-  list-style-type: upper-roman;\r
-}\r
-\r
-div.compact ul, div.compact ol,\r
-div.compact p, div.compact p,\r
-div.compact div, div.compact div {\r
-  margin-top: 0.1em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-tfoot {\r
-  font-weight: bold;\r
-}\r
-td > div.verse {\r
-  white-space: pre;\r
-}\r
-\r
-div.hdlist {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-div.hdlist tr {\r
-  padding-bottom: 15px;\r
-}\r
-dt.hdlist1.strong, td.hdlist1.strong {\r
-  font-weight: bold;\r
-}\r
-td.hdlist1 {\r
-  vertical-align: top;\r
-  font-style: normal;\r
-  padding-right: 0.8em;\r
-  color: navy;\r
-}\r
-td.hdlist2 {\r
-  vertical-align: top;\r
-}\r
-div.hdlist.compact tr {\r
-  margin: 0;\r
-  padding-bottom: 0;\r
-}\r
-\r
-.comment {\r
-  background: yellow;\r
-}\r
-\r
-.footnote, .footnoteref {\r
-  font-size: 0.8em;\r
-}\r
-\r
-span.footnote, span.footnoteref {\r
-  vertical-align: super;\r
-}\r
-\r
-#footnotes {\r
-  margin: 20px 0 20px 0;\r
-  padding: 7px 0 0 0;\r
-}\r
-\r
-#footnotes div.footnote {\r
-  margin: 0 0 5px 0;\r
-}\r
-\r
-#footnotes hr {\r
-  border: none;\r
-  border-top: 1px solid silver;\r
-  height: 1px;\r
-  text-align: left;\r
-  margin-left: 0;\r
-  width: 20%;\r
-  min-width: 100px;\r
-}\r
-\r
-div.colist td {\r
-  padding-right: 0.5em;\r
-  padding-bottom: 0.3em;\r
-  vertical-align: top;\r
-}\r
-div.colist td img {\r
-  margin-top: 0.3em;\r
-}\r
-\r
-@media print {\r
-  #footer-badges { display: none; }\r
-}\r
-\r
-#toc {\r
-  margin-bottom: 2.5em;\r
-}\r
-\r
-#toctitle {\r
-  color: #527bbd;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
-  margin-top: 0;\r
-  margin-bottom: 0;\r
-}\r
-div.toclevel2 {\r
-  margin-left: 2em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel3 {\r
-  margin-left: 4em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel4 {\r
-  margin-left: 6em;\r
-  font-size: 0.9em;\r
-}\r
-\r
-span.aqua { color: aqua; }\r
-span.black { color: black; }\r
-span.blue { color: blue; }\r
-span.fuchsia { color: fuchsia; }\r
-span.gray { color: gray; }\r
-span.green { color: green; }\r
-span.lime { color: lime; }\r
-span.maroon { color: maroon; }\r
-span.navy { color: navy; }\r
-span.olive { color: olive; }\r
-span.purple { color: purple; }\r
-span.red { color: red; }\r
-span.silver { color: silver; }\r
-span.teal { color: teal; }\r
-span.white { color: white; }\r
-span.yellow { color: yellow; }\r
-\r
-span.aqua-background { background: aqua; }\r
-span.black-background { background: black; }\r
-span.blue-background { background: blue; }\r
-span.fuchsia-background { background: fuchsia; }\r
-span.gray-background { background: gray; }\r
-span.green-background { background: green; }\r
-span.lime-background { background: lime; }\r
-span.maroon-background { background: maroon; }\r
-span.navy-background { background: navy; }\r
-span.olive-background { background: olive; }\r
-span.purple-background { background: purple; }\r
-span.red-background { background: red; }\r
-span.silver-background { background: silver; }\r
-span.teal-background { background: teal; }\r
-span.white-background { background: white; }\r
-span.yellow-background { background: yellow; }\r
-\r
-span.big { font-size: 2em; }\r
-span.small { font-size: 0.6em; }\r
-\r
-span.underline { text-decoration: underline; }\r
-span.overline { text-decoration: overline; }\r
-span.line-through { text-decoration: line-through; }\r
-\r
-div.unbreakable { page-break-inside: avoid; }\r
-\r
-\r
-/*\r
- * xhtml11 specific\r
- *\r
- * */\r
-\r
-div.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.tableblock > table {\r
-  border: 3px solid #527bbd;\r
-}\r
-thead, p.table.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.table {\r
-  margin-top: 0;\r
-}\r
-/* Because the table frame attribute is overridden by CSS in most browsers. */\r
-div.tableblock > table[frame="void"] {\r
-  border-style: none;\r
-}\r
-div.tableblock > table[frame="hsides"] {\r
-  border-left-style: none;\r
-  border-right-style: none;\r
-}\r
-div.tableblock > table[frame="vsides"] {\r
-  border-top-style: none;\r
-  border-bottom-style: none;\r
-}\r
-\r
-\r
-/*\r
- * html5 specific\r
- *\r
- * */\r
-\r
-table.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-thead, p.tableblock.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.tableblock {\r
-  margin-top: 0;\r
-}\r
-table.tableblock {\r
-  border-width: 3px;\r
-  border-spacing: 0px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-  border-collapse: collapse;\r
-}\r
-th.tableblock, td.tableblock {\r
-  border-width: 1px;\r
-  padding: 4px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-}\r
-\r
-table.tableblock.frame-topbot {\r
-  border-left-style: hidden;\r
-  border-right-style: hidden;\r
-}\r
-table.tableblock.frame-sides {\r
-  border-top-style: hidden;\r
-  border-bottom-style: hidden;\r
-}\r
-table.tableblock.frame-none {\r
-  border-style: hidden;\r
-}\r
-\r
-th.tableblock.halign-left, td.tableblock.halign-left {\r
-  text-align: left;\r
-}\r
-th.tableblock.halign-center, td.tableblock.halign-center {\r
-  text-align: center;\r
-}\r
-th.tableblock.halign-right, td.tableblock.halign-right {\r
-  text-align: right;\r
-}\r
-\r
-th.tableblock.valign-top, td.tableblock.valign-top {\r
-  vertical-align: top;\r
-}\r
-th.tableblock.valign-middle, td.tableblock.valign-middle {\r
-  vertical-align: middle;\r
-}\r
-th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
-  vertical-align: bottom;\r
-}\r
-\r
-\r
-/*\r
- * manpage specific\r
- *\r
- * */\r
-\r
-body.manpage h1 {\r
-  padding-top: 0.5em;\r
-  padding-bottom: 0.5em;\r
-  border-top: 2px solid silver;\r
-  border-bottom: 2px solid silver;\r
-}\r
-body.manpage h2 {\r
-  border-style: none;\r
-}\r
-body.manpage div.sectionbody {\r
-  margin-left: 3em;\r
-}\r
-\r
-@media print {\r
-  body.manpage div#toc { display: none; }\r
-}\r
-\r
-\r
-</style>\r
-<script type="text/javascript">\r
-/*<![CDATA[*/\r
-var asciidoc = {  // Namespace.\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Table Of Contents generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Author: Mihai Bazon, September 2002\r
- * http://students.infoiasi.ro/~mishoo\r
- *\r
- * Table Of Content generator\r
- * Version: 0.4\r
- *\r
- * Feel free to use this script under the terms of the GNU General Public\r
- * License, as long as you do not remove or alter this notice.\r
- */\r
-\r
- /* modified by Troy D. Hanson, September 2006. License: GPL */\r
- /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
-\r
-// toclevels = 1..4.\r
-toc: function (toclevels) {\r
-\r
-  function getText(el) {\r
-    var text = "";\r
-    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
-        text += i.data;\r
-      else if (i.firstChild != null)\r
-        text += getText(i);\r
-    }\r
-    return text;\r
-  }\r
-\r
-  function TocEntry(el, text, toclevel) {\r
-    this.element = el;\r
-    this.text = text;\r
-    this.toclevel = toclevel;\r
-  }\r
-\r
-  function tocEntries(el, toclevels) {\r
-    var result = new Array;\r
-    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
-    // Function that scans the DOM tree for header elements (the DOM2\r
-    // nodeIterator API would be a better technique but not supported by all\r
-    // browsers).\r
-    var iterate = function (el) {\r
-      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
-          var mo = re.exec(i.tagName);\r
-          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
-            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
-          }\r
-          iterate(i);\r
-        }\r
-      }\r
-    }\r
-    iterate(el);\r
-    return result;\r
-  }\r
-\r
-  var toc = document.getElementById("toc");\r
-  if (!toc) {\r
-    return;\r
-  }\r
-\r
-  // Delete existing TOC entries in case we're reloading the TOC.\r
-  var tocEntriesToRemove = [];\r
-  var i;\r
-  for (i = 0; i < toc.childNodes.length; i++) {\r
-    var entry = toc.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div'\r
-     && entry.getAttribute("class")\r
-     && entry.getAttribute("class").match(/^toclevel/))\r
-      tocEntriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
-    toc.removeChild(tocEntriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild TOC entries.\r
-  var entries = tocEntries(document.getElementById("content"), toclevels);\r
-  for (var i = 0; i < entries.length; ++i) {\r
-    var entry = entries[i];\r
-    if (entry.element.id == "")\r
-      entry.element.id = "_toc_" + i;\r
-    var a = document.createElement("a");\r
-    a.href = "#" + entry.element.id;\r
-    a.appendChild(document.createTextNode(entry.text));\r
-    var div = document.createElement("div");\r
-    div.appendChild(a);\r
-    div.className = "toclevel" + entry.toclevel;\r
-    toc.appendChild(div);\r
-  }\r
-  if (entries.length == 0)\r
-    toc.parentNode.removeChild(toc);\r
-},\r
-\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Footnotes generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Based on footnote generation code from:\r
- * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
- */\r
-\r
-footnotes: function () {\r
-  // Delete existing footnote entries in case we're reloading the footnodes.\r
-  var i;\r
-  var noteholder = document.getElementById("footnotes");\r
-  if (!noteholder) {\r
-    return;\r
-  }\r
-  var entriesToRemove = [];\r
-  for (i = 0; i < noteholder.childNodes.length; i++) {\r
-    var entry = noteholder.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
-      entriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < entriesToRemove.length; i++) {\r
-    noteholder.removeChild(entriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild footnote entries.\r
-  var cont = document.getElementById("content");\r
-  var spans = cont.getElementsByTagName("span");\r
-  var refs = {};\r
-  var n = 0;\r
-  for (i=0; i<spans.length; i++) {\r
-    if (spans[i].className == "footnote") {\r
-      n++;\r
-      var note = spans[i].getAttribute("data-note");\r
-      if (!note) {\r
-        // Use [\s\S] in place of . so multi-line matches work.\r
-        // Because JavaScript has no s (dotall) regex flag.\r
-        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
-        spans[i].innerHTML =\r
-          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-        spans[i].setAttribute("data-note", note);\r
-      }\r
-      noteholder.innerHTML +=\r
-        "<div class='footnote' id='_footnote_" + n + "'>" +\r
-        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
-        n + "</a>. " + note + "</div>";\r
-      var id =spans[i].getAttribute("id");\r
-      if (id != null) refs["#"+id] = n;\r
-    }\r
-  }\r
-  if (n == 0)\r
-    noteholder.parentNode.removeChild(noteholder);\r
-  else {\r
-    // Process footnoterefs.\r
-    for (i=0; i<spans.length; i++) {\r
-      if (spans[i].className == "footnoteref") {\r
-        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
-        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
-        n = refs[href];\r
-        spans[i].innerHTML =\r
-          "[<a href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-      }\r
-    }\r
-  }\r
-},\r
-\r
-install: function(toclevels) {\r
-  var timerId;\r
-\r
-  function reinstall() {\r
-    asciidoc.footnotes();\r
-    if (toclevels) {\r
-      asciidoc.toc(toclevels);\r
-    }\r
-  }\r
-\r
-  function reinstallAndRemoveTimer() {\r
-    clearInterval(timerId);\r
-    reinstall();\r
-  }\r
-\r
-  timerId = setInterval(reinstall, 500);\r
-  if (document.addEventListener)\r
-    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
-  else\r
-    window.onload = reinstallAndRemoveTimer;\r
-}\r
-\r
-}\r
-asciidoc.install();\r
-/*]]>*/\r
-</script>\r
-</head>\r
-<body class="manpage">\r
-<div id="header">\r
-<h1>\r
-nvme-lnvm-id-ns(1) Manual Page\r
-</h1>\r
-<h2>NAME</h2>\r
-<div class="sectionbody">\r
-<p>nvme-lnvm-id-ns -\r
-   Identify Geometry for LightNVM NVMe device\r
-</p>\r
-</div>\r
-</div>\r
-<div id="content">\r
-<div class="sect1">\r
-<h2 id="_synopsis">SYNOPSIS</h2>\r
-<div class="sectionbody">\r
-<div class="verseblock">\r
-<pre class="content"><em>nvme lnvm-id-ns</em> &lt;device&gt; [--namespace-id=&lt;nsid&gt; | -n &lt;nsid&gt;]\r
-                        [--force ]\r
-                        [--raw-binary | -b]\r
-                        [--human-readable | -H]</pre>\r
-<div class="attribution">\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_description">DESCRIPTION</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Send an Identify Geometry command to the given LightNVM device, returns\r
-properties of the specified namespace in either human-readable or binary\r
-format.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_options">OPTIONS</h2>\r
-<div class="sectionbody">\r
-<div class="dlist"><dl>\r
-<dt class="hdlist1">\r
---namespace-id=&lt;nsid&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--n &lt;nsid&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Retrieve the geometry from the selected namespace.\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---force\r
-</dt>\r
-<dd>\r
-<p>\r
-        Try to read the data and assume it is a LightNVM device\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---raw-binary\r
-</dt>\r
-<dt class="hdlist1">\r
--b\r
-</dt>\r
-<dd>\r
-<p>\r
-        Output the raw output\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---human-readable\r
-</dt>\r
-<dt class="hdlist1">\r
--H\r
-</dt>\r
-<dd>\r
-<p>\r
-        Output the status in human readable format\r
-</p>\r
-</dd>\r
-</dl></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_examples">EXAMPLES</h2>\r
-<div class="sectionbody">\r
-<div class="ulist"><ul>\r
-<li>\r
-<p>\r
-Retrieve the geometry from nvme0\r
-</p>\r
-</li>\r
-</ul></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code># nvme lnvm-id-ns /dev/nvme0 -n 1</code></pre>\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_nvme">NVME</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Part of the nvme-user suite</p></div>\r
-</div>\r
-</div>\r
-</div>\r
-<div id="footnotes"><hr /></div>\r
-<div id="footer">\r
-<div id="footer-text">\r
-Last updated\r
- 2021-12-15 10:13:53 CET\r
-</div>\r
-</div>\r
-</body>\r
-</html>\r
diff --git a/Documentation/nvme-lnvm-id-ns.txt b/Documentation/nvme-lnvm-id-ns.txt
deleted file mode 100644 (file)
index 7b58f29..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-nvme-lnvm-id-ns(1)
-==================
-
-NAME
-----
-nvme-lnvm-id-ns - Identify Geometry for LightNVM NVMe device
-
-SYNOPSIS
---------
-[verse]
-'nvme lnvm-id-ns' <device> [--namespace-id=<nsid> | -n <nsid>]
-                       [--force ]
-                       [--raw-binary | -b]
-                       [--human-readable | -H]
-
-DESCRIPTION
------------
-Send an Identify Geometry command to the given LightNVM device, returns
-properties of the specified namespace in either human-readable or binary
-format.
-
-OPTIONS
--------
---namespace-id=<nsid>::
--n <nsid>::
-       Retrieve the geometry from the selected namespace.
-
---force::
-       Try to read the data and assume it is a LightNVM device
-
---raw-binary::
--b::
-       Output the raw output
-
---human-readable::
--H::
-       Output the status in human readable format
-
-EXAMPLES
---------
-* Retrieve the geometry from nvme0
-------------
-# nvme lnvm-id-ns /dev/nvme0 -n 1
-------------
-
-NVME
-----
-Part of the nvme-user suite
diff --git a/Documentation/nvme-lnvm-info.1 b/Documentation/nvme-lnvm-info.1
deleted file mode 100644 (file)
index eff7406..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-'\" t
-.\"     Title: nvme-lnvm-info
-.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
-.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 10/20/2020
-.\"    Manual: NVMe Manual
-.\"    Source: NVMe
-.\"  Language: English
-.\"
-.TH "NVME\-LNVM\-INFO" "1" "10/20/2020" "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-lnvm-info \- Show general information and registered target types with LightNVM
-.SH "SYNOPSIS"
-.sp
-.nf
-\fInvme lnvm\-info\fR
-.fi
-.SH "DESCRIPTION"
-.sp
-Show general information and registered target types with LightNVM\&.
-.SH "OPTIONS"
-.sp
-No options yet\&.
-.SH "EXAMPLES"
-.sp
-No examples yet\&.
-.SH "NVME"
-.sp
-Part of the nvme\-user suite
diff --git a/Documentation/nvme-lnvm-info.html b/Documentation/nvme-lnvm-info.html
deleted file mode 100644 (file)
index 13b714f..0000000
+++ /dev/null
@@ -1,786 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
-    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
-<head>\r
-<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc 8.6.8" />\r
-<title>nvme-lnvm-info(1)</title>\r
-<style type="text/css">\r
-/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
-\r
-/* Default font. */\r
-body {\r
-  font-family: Georgia,serif;\r
-}\r
-\r
-/* Title font. */\r
-h1, h2, h3, h4, h5, h6,\r
-div.title, caption.title,\r
-thead, p.table.header,\r
-#toctitle,\r
-#author, #revnumber, #revdate, #revremark,\r
-#footer {\r
-  font-family: Arial,Helvetica,sans-serif;\r
-}\r
-\r
-body {\r
-  margin: 1em 5% 1em 5%;\r
-}\r
-\r
-a {\r
-  color: blue;\r
-  text-decoration: underline;\r
-}\r
-a:visited {\r
-  color: fuchsia;\r
-}\r
-\r
-em {\r
-  font-style: italic;\r
-  color: navy;\r
-}\r
-\r
-strong {\r
-  font-weight: bold;\r
-  color: #083194;\r
-}\r
-\r
-h1, h2, h3, h4, h5, h6 {\r
-  color: #527bbd;\r
-  margin-top: 1.2em;\r
-  margin-bottom: 0.5em;\r
-  line-height: 1.3;\r
-}\r
-\r
-h1, h2, h3 {\r
-  border-bottom: 2px solid silver;\r
-}\r
-h2 {\r
-  padding-top: 0.5em;\r
-}\r
-h3 {\r
-  float: left;\r
-}\r
-h3 + * {\r
-  clear: left;\r
-}\r
-h5 {\r
-  font-size: 1.0em;\r
-}\r
-\r
-div.sectionbody {\r
-  margin-left: 0;\r
-}\r
-\r
-hr {\r
-  border: 1px solid silver;\r
-}\r
-\r
-p {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0.5em;\r
-}\r
-\r
-ul, ol, li > p {\r
-  margin-top: 0;\r
-}\r
-ul > li     { color: #aaa; }\r
-ul > li > * { color: black; }\r
-\r
-.monospaced, code, pre {\r
-  font-family: "Courier New", Courier, monospace;\r
-  font-size: inherit;\r
-  color: navy;\r
-  padding: 0;\r
-  margin: 0;\r
-}\r
-\r
-\r
-#author {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  font-size: 1.1em;\r
-}\r
-#email {\r
-}\r
-#revnumber, #revdate, #revremark {\r
-}\r
-\r
-#footer {\r
-  font-size: small;\r
-  border-top: 2px solid silver;\r
-  padding-top: 0.5em;\r
-  margin-top: 4.0em;\r
-}\r
-#footer-text {\r
-  float: left;\r
-  padding-bottom: 0.5em;\r
-}\r
-#footer-badges {\r
-  float: right;\r
-  padding-bottom: 0.5em;\r
-}\r
-\r
-#preamble {\r
-  margin-top: 1.5em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.imageblock, div.exampleblock, div.verseblock,\r
-div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
-div.admonitionblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.admonitionblock {\r
-  margin-top: 2.0em;\r
-  margin-bottom: 2.0em;\r
-  margin-right: 10%;\r
-  color: #606060;\r
-}\r
-\r
-div.content { /* Block element content. */\r
-  padding: 0;\r
-}\r
-\r
-/* Block element titles. */\r
-div.title, caption.title {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  text-align: left;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.5em;\r
-}\r
-div.title + * {\r
-  margin-top: 0;\r
-}\r
-\r
-td div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content + div.title {\r
-  margin-top: 0.0em;\r
-}\r
-\r
-div.sidebarblock > div.content {\r
-  background: #ffffee;\r
-  border: 1px solid #dddddd;\r
-  border-left: 4px solid #f0f0f0;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.listingblock > div.content {\r
-  border: 1px solid #dddddd;\r
-  border-left: 5px solid #f0f0f0;\r
-  background: #f8f8f8;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.quoteblock, div.verseblock {\r
-  padding-left: 1.0em;\r
-  margin-left: 1.0em;\r
-  margin-right: 10%;\r
-  border-left: 5px solid #f0f0f0;\r
-  color: #888;\r
-}\r
-\r
-div.quoteblock > div.attribution {\r
-  padding-top: 0.5em;\r
-  text-align: right;\r
-}\r
-\r
-div.verseblock > pre.content {\r
-  font-family: inherit;\r
-  font-size: inherit;\r
-}\r
-div.verseblock > div.attribution {\r
-  padding-top: 0.75em;\r
-  text-align: left;\r
-}\r
-/* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
-div.verseblock + div.attribution {\r
-  text-align: left;\r
-}\r
-\r
-div.admonitionblock .icon {\r
-  vertical-align: top;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  text-decoration: underline;\r
-  color: #527bbd;\r
-  padding-right: 0.5em;\r
-}\r
-div.admonitionblock td.content {\r
-  padding-left: 0.5em;\r
-  border-left: 3px solid #dddddd;\r
-}\r
-\r
-div.exampleblock > div.content {\r
-  border-left: 3px solid #dddddd;\r
-  padding-left: 0.5em;\r
-}\r
-\r
-div.imageblock div.content { padding-left: 0; }\r
-span.image img { border-style: none; }\r
-a.image:visited { color: white; }\r
-\r
-dl {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-dt {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0;\r
-  font-style: normal;\r
-  color: navy;\r
-}\r
-dd > *:first-child {\r
-  margin-top: 0.1em;\r
-}\r
-\r
-ul, ol {\r
-    list-style-position: outside;\r
-}\r
-ol.arabic {\r
-  list-style-type: decimal;\r
-}\r
-ol.loweralpha {\r
-  list-style-type: lower-alpha;\r
-}\r
-ol.upperalpha {\r
-  list-style-type: upper-alpha;\r
-}\r
-ol.lowerroman {\r
-  list-style-type: lower-roman;\r
-}\r
-ol.upperroman {\r
-  list-style-type: upper-roman;\r
-}\r
-\r
-div.compact ul, div.compact ol,\r
-div.compact p, div.compact p,\r
-div.compact div, div.compact div {\r
-  margin-top: 0.1em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-tfoot {\r
-  font-weight: bold;\r
-}\r
-td > div.verse {\r
-  white-space: pre;\r
-}\r
-\r
-div.hdlist {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-div.hdlist tr {\r
-  padding-bottom: 15px;\r
-}\r
-dt.hdlist1.strong, td.hdlist1.strong {\r
-  font-weight: bold;\r
-}\r
-td.hdlist1 {\r
-  vertical-align: top;\r
-  font-style: normal;\r
-  padding-right: 0.8em;\r
-  color: navy;\r
-}\r
-td.hdlist2 {\r
-  vertical-align: top;\r
-}\r
-div.hdlist.compact tr {\r
-  margin: 0;\r
-  padding-bottom: 0;\r
-}\r
-\r
-.comment {\r
-  background: yellow;\r
-}\r
-\r
-.footnote, .footnoteref {\r
-  font-size: 0.8em;\r
-}\r
-\r
-span.footnote, span.footnoteref {\r
-  vertical-align: super;\r
-}\r
-\r
-#footnotes {\r
-  margin: 20px 0 20px 0;\r
-  padding: 7px 0 0 0;\r
-}\r
-\r
-#footnotes div.footnote {\r
-  margin: 0 0 5px 0;\r
-}\r
-\r
-#footnotes hr {\r
-  border: none;\r
-  border-top: 1px solid silver;\r
-  height: 1px;\r
-  text-align: left;\r
-  margin-left: 0;\r
-  width: 20%;\r
-  min-width: 100px;\r
-}\r
-\r
-div.colist td {\r
-  padding-right: 0.5em;\r
-  padding-bottom: 0.3em;\r
-  vertical-align: top;\r
-}\r
-div.colist td img {\r
-  margin-top: 0.3em;\r
-}\r
-\r
-@media print {\r
-  #footer-badges { display: none; }\r
-}\r
-\r
-#toc {\r
-  margin-bottom: 2.5em;\r
-}\r
-\r
-#toctitle {\r
-  color: #527bbd;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
-  margin-top: 0;\r
-  margin-bottom: 0;\r
-}\r
-div.toclevel2 {\r
-  margin-left: 2em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel3 {\r
-  margin-left: 4em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel4 {\r
-  margin-left: 6em;\r
-  font-size: 0.9em;\r
-}\r
-\r
-span.aqua { color: aqua; }\r
-span.black { color: black; }\r
-span.blue { color: blue; }\r
-span.fuchsia { color: fuchsia; }\r
-span.gray { color: gray; }\r
-span.green { color: green; }\r
-span.lime { color: lime; }\r
-span.maroon { color: maroon; }\r
-span.navy { color: navy; }\r
-span.olive { color: olive; }\r
-span.purple { color: purple; }\r
-span.red { color: red; }\r
-span.silver { color: silver; }\r
-span.teal { color: teal; }\r
-span.white { color: white; }\r
-span.yellow { color: yellow; }\r
-\r
-span.aqua-background { background: aqua; }\r
-span.black-background { background: black; }\r
-span.blue-background { background: blue; }\r
-span.fuchsia-background { background: fuchsia; }\r
-span.gray-background { background: gray; }\r
-span.green-background { background: green; }\r
-span.lime-background { background: lime; }\r
-span.maroon-background { background: maroon; }\r
-span.navy-background { background: navy; }\r
-span.olive-background { background: olive; }\r
-span.purple-background { background: purple; }\r
-span.red-background { background: red; }\r
-span.silver-background { background: silver; }\r
-span.teal-background { background: teal; }\r
-span.white-background { background: white; }\r
-span.yellow-background { background: yellow; }\r
-\r
-span.big { font-size: 2em; }\r
-span.small { font-size: 0.6em; }\r
-\r
-span.underline { text-decoration: underline; }\r
-span.overline { text-decoration: overline; }\r
-span.line-through { text-decoration: line-through; }\r
-\r
-div.unbreakable { page-break-inside: avoid; }\r
-\r
-\r
-/*\r
- * xhtml11 specific\r
- *\r
- * */\r
-\r
-div.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.tableblock > table {\r
-  border: 3px solid #527bbd;\r
-}\r
-thead, p.table.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.table {\r
-  margin-top: 0;\r
-}\r
-/* Because the table frame attribute is overridden by CSS in most browsers. */\r
-div.tableblock > table[frame="void"] {\r
-  border-style: none;\r
-}\r
-div.tableblock > table[frame="hsides"] {\r
-  border-left-style: none;\r
-  border-right-style: none;\r
-}\r
-div.tableblock > table[frame="vsides"] {\r
-  border-top-style: none;\r
-  border-bottom-style: none;\r
-}\r
-\r
-\r
-/*\r
- * html5 specific\r
- *\r
- * */\r
-\r
-table.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-thead, p.tableblock.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.tableblock {\r
-  margin-top: 0;\r
-}\r
-table.tableblock {\r
-  border-width: 3px;\r
-  border-spacing: 0px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-  border-collapse: collapse;\r
-}\r
-th.tableblock, td.tableblock {\r
-  border-width: 1px;\r
-  padding: 4px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-}\r
-\r
-table.tableblock.frame-topbot {\r
-  border-left-style: hidden;\r
-  border-right-style: hidden;\r
-}\r
-table.tableblock.frame-sides {\r
-  border-top-style: hidden;\r
-  border-bottom-style: hidden;\r
-}\r
-table.tableblock.frame-none {\r
-  border-style: hidden;\r
-}\r
-\r
-th.tableblock.halign-left, td.tableblock.halign-left {\r
-  text-align: left;\r
-}\r
-th.tableblock.halign-center, td.tableblock.halign-center {\r
-  text-align: center;\r
-}\r
-th.tableblock.halign-right, td.tableblock.halign-right {\r
-  text-align: right;\r
-}\r
-\r
-th.tableblock.valign-top, td.tableblock.valign-top {\r
-  vertical-align: top;\r
-}\r
-th.tableblock.valign-middle, td.tableblock.valign-middle {\r
-  vertical-align: middle;\r
-}\r
-th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
-  vertical-align: bottom;\r
-}\r
-\r
-\r
-/*\r
- * manpage specific\r
- *\r
- * */\r
-\r
-body.manpage h1 {\r
-  padding-top: 0.5em;\r
-  padding-bottom: 0.5em;\r
-  border-top: 2px solid silver;\r
-  border-bottom: 2px solid silver;\r
-}\r
-body.manpage h2 {\r
-  border-style: none;\r
-}\r
-body.manpage div.sectionbody {\r
-  margin-left: 3em;\r
-}\r
-\r
-@media print {\r
-  body.manpage div#toc { display: none; }\r
-}\r
-\r
-\r
-</style>\r
-<script type="text/javascript">\r
-/*<![CDATA[*/\r
-var asciidoc = {  // Namespace.\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Table Of Contents generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Author: Mihai Bazon, September 2002\r
- * http://students.infoiasi.ro/~mishoo\r
- *\r
- * Table Of Content generator\r
- * Version: 0.4\r
- *\r
- * Feel free to use this script under the terms of the GNU General Public\r
- * License, as long as you do not remove or alter this notice.\r
- */\r
-\r
- /* modified by Troy D. Hanson, September 2006. License: GPL */\r
- /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
-\r
-// toclevels = 1..4.\r
-toc: function (toclevels) {\r
-\r
-  function getText(el) {\r
-    var text = "";\r
-    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
-        text += i.data;\r
-      else if (i.firstChild != null)\r
-        text += getText(i);\r
-    }\r
-    return text;\r
-  }\r
-\r
-  function TocEntry(el, text, toclevel) {\r
-    this.element = el;\r
-    this.text = text;\r
-    this.toclevel = toclevel;\r
-  }\r
-\r
-  function tocEntries(el, toclevels) {\r
-    var result = new Array;\r
-    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
-    // Function that scans the DOM tree for header elements (the DOM2\r
-    // nodeIterator API would be a better technique but not supported by all\r
-    // browsers).\r
-    var iterate = function (el) {\r
-      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
-          var mo = re.exec(i.tagName);\r
-          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
-            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
-          }\r
-          iterate(i);\r
-        }\r
-      }\r
-    }\r
-    iterate(el);\r
-    return result;\r
-  }\r
-\r
-  var toc = document.getElementById("toc");\r
-  if (!toc) {\r
-    return;\r
-  }\r
-\r
-  // Delete existing TOC entries in case we're reloading the TOC.\r
-  var tocEntriesToRemove = [];\r
-  var i;\r
-  for (i = 0; i < toc.childNodes.length; i++) {\r
-    var entry = toc.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div'\r
-     && entry.getAttribute("class")\r
-     && entry.getAttribute("class").match(/^toclevel/))\r
-      tocEntriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
-    toc.removeChild(tocEntriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild TOC entries.\r
-  var entries = tocEntries(document.getElementById("content"), toclevels);\r
-  for (var i = 0; i < entries.length; ++i) {\r
-    var entry = entries[i];\r
-    if (entry.element.id == "")\r
-      entry.element.id = "_toc_" + i;\r
-    var a = document.createElement("a");\r
-    a.href = "#" + entry.element.id;\r
-    a.appendChild(document.createTextNode(entry.text));\r
-    var div = document.createElement("div");\r
-    div.appendChild(a);\r
-    div.className = "toclevel" + entry.toclevel;\r
-    toc.appendChild(div);\r
-  }\r
-  if (entries.length == 0)\r
-    toc.parentNode.removeChild(toc);\r
-},\r
-\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Footnotes generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Based on footnote generation code from:\r
- * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
- */\r
-\r
-footnotes: function () {\r
-  // Delete existing footnote entries in case we're reloading the footnodes.\r
-  var i;\r
-  var noteholder = document.getElementById("footnotes");\r
-  if (!noteholder) {\r
-    return;\r
-  }\r
-  var entriesToRemove = [];\r
-  for (i = 0; i < noteholder.childNodes.length; i++) {\r
-    var entry = noteholder.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
-      entriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < entriesToRemove.length; i++) {\r
-    noteholder.removeChild(entriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild footnote entries.\r
-  var cont = document.getElementById("content");\r
-  var spans = cont.getElementsByTagName("span");\r
-  var refs = {};\r
-  var n = 0;\r
-  for (i=0; i<spans.length; i++) {\r
-    if (spans[i].className == "footnote") {\r
-      n++;\r
-      var note = spans[i].getAttribute("data-note");\r
-      if (!note) {\r
-        // Use [\s\S] in place of . so multi-line matches work.\r
-        // Because JavaScript has no s (dotall) regex flag.\r
-        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
-        spans[i].innerHTML =\r
-          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-        spans[i].setAttribute("data-note", note);\r
-      }\r
-      noteholder.innerHTML +=\r
-        "<div class='footnote' id='_footnote_" + n + "'>" +\r
-        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
-        n + "</a>. " + note + "</div>";\r
-      var id =spans[i].getAttribute("id");\r
-      if (id != null) refs["#"+id] = n;\r
-    }\r
-  }\r
-  if (n == 0)\r
-    noteholder.parentNode.removeChild(noteholder);\r
-  else {\r
-    // Process footnoterefs.\r
-    for (i=0; i<spans.length; i++) {\r
-      if (spans[i].className == "footnoteref") {\r
-        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
-        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
-        n = refs[href];\r
-        spans[i].innerHTML =\r
-          "[<a href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-      }\r
-    }\r
-  }\r
-},\r
-\r
-install: function(toclevels) {\r
-  var timerId;\r
-\r
-  function reinstall() {\r
-    asciidoc.footnotes();\r
-    if (toclevels) {\r
-      asciidoc.toc(toclevels);\r
-    }\r
-  }\r
-\r
-  function reinstallAndRemoveTimer() {\r
-    clearInterval(timerId);\r
-    reinstall();\r
-  }\r
-\r
-  timerId = setInterval(reinstall, 500);\r
-  if (document.addEventListener)\r
-    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
-  else\r
-    window.onload = reinstallAndRemoveTimer;\r
-}\r
-\r
-}\r
-asciidoc.install();\r
-/*]]>*/\r
-</script>\r
-</head>\r
-<body class="manpage">\r
-<div id="header">\r
-<h1>\r
-nvme-lnvm-info(1) Manual Page\r
-</h1>\r
-<h2>NAME</h2>\r
-<div class="sectionbody">\r
-<p>nvme-lnvm-info -\r
-   Show general information and registered target types with LightNVM\r
-</p>\r
-</div>\r
-</div>\r
-<div id="content">\r
-<div class="sect1">\r
-<h2 id="_synopsis">SYNOPSIS</h2>\r
-<div class="sectionbody">\r
-<div class="verseblock">\r
-<pre class="content"><em>nvme lnvm-info</em></pre>\r
-<div class="attribution">\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_description">DESCRIPTION</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Show general information and registered target types with LightNVM.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_options">OPTIONS</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>No options yet.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_examples">EXAMPLES</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>No examples yet.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_nvme">NVME</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Part of the nvme-user suite</p></div>\r
-</div>\r
-</div>\r
-</div>\r
-<div id="footnotes"><hr /></div>\r
-<div id="footer">\r
-<div id="footer-text">\r
-Last updated 2017-02-27 10:11:58 EST\r
-</div>\r
-</div>\r
-</body>\r
-</html>\r
diff --git a/Documentation/nvme-lnvm-info.txt b/Documentation/nvme-lnvm-info.txt
deleted file mode 100644 (file)
index e755c9c..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-nvme-lnvm-info(1)
-=================
-
-NAME
-----
-nvme-lnvm-info - Show general information and registered target types with LightNVM
-
-SYNOPSIS
---------
-[verse]
-'nvme lnvm-info'
-
-DESCRIPTION
------------
-Show general information and registered target types with LightNVM.
-
-OPTIONS
--------
-No options yet.
-
-EXAMPLES
---------
-No examples yet.
-
-NVME
-----
-Part of the nvme-user suite
diff --git a/Documentation/nvme-lnvm-init.1 b/Documentation/nvme-lnvm-init.1
deleted file mode 100644 (file)
index 369b1af..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-'\" t
-.\"     Title: nvme-lnvm-init
-.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
-.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 10/20/2020
-.\"    Manual: NVMe Manual
-.\"    Source: NVMe
-.\"  Language: English
-.\"
-.TH "NVME\-LNVM\-INIT" "1" "10/20/2020" "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-lnvm-init \- Initialize LightNVM device with media manager
-.SH "SYNOPSIS"
-.sp
-.nf
-\fInvme lnvm\-init\fR [\-\-device\-name=<DEVICE> | \-d <DEVICE>]
-                        [\-\-mediamgr\-name | \-m]
-.fi
-.SH "DESCRIPTION"
-.sp
-Initialize LightNVM device\&. A LightNVM/Open\-Channel SSD must have a media manager associated before it can be exposed to the user\&. The default is to initialize the general media manager on top of the device\&.
-.SH "OPTIONS"
-.PP
-\-\-device\-name=<DEVICE>, \-d <DEVICE>
-.RS 4
-Device name to initialize\&.
-.RE
-.PP
-\-\-mediamgr\-name=<MediaMgr>, \-m <MediaMgr>
-.RS 4
-Media Manager name to use for initialization\&.
-.RE
-.SH "EXAMPLES"
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-Initialize nvme0n1
-.RE
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-# nvme lnvm\-init \-d nvme0n1
-.fi
-.if n \{\
-.RE
-.\}
-.sp
-.RS 4
-.ie n \{\
-\h'-04'\(bu\h'+03'\c
-.\}
-.el \{\
-.sp -1
-.IP \(bu 2.3
-.\}
-Initialize nvme0n1 with gennvm media manager (default media manager)
-.RE
-.sp
-.if n \{\
-.RS 4
-.\}
-.nf
-# nvme lnvm\-init \-d nvme0n1 \-m gennvm
-.fi
-.if n \{\
-.RE
-.\}
-.SH "NVME"
-.sp
-Part of the nvme\-user suite
diff --git a/Documentation/nvme-lnvm-init.html b/Documentation/nvme-lnvm-init.html
deleted file mode 100644 (file)
index d1fc894..0000000
+++ /dev/null
@@ -1,833 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
-    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
-<head>\r
-<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc 8.6.8" />\r
-<title>nvme-lnvm-init(1)</title>\r
-<style type="text/css">\r
-/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
-\r
-/* Default font. */\r
-body {\r
-  font-family: Georgia,serif;\r
-}\r
-\r
-/* Title font. */\r
-h1, h2, h3, h4, h5, h6,\r
-div.title, caption.title,\r
-thead, p.table.header,\r
-#toctitle,\r
-#author, #revnumber, #revdate, #revremark,\r
-#footer {\r
-  font-family: Arial,Helvetica,sans-serif;\r
-}\r
-\r
-body {\r
-  margin: 1em 5% 1em 5%;\r
-}\r
-\r
-a {\r
-  color: blue;\r
-  text-decoration: underline;\r
-}\r
-a:visited {\r
-  color: fuchsia;\r
-}\r
-\r
-em {\r
-  font-style: italic;\r
-  color: navy;\r
-}\r
-\r
-strong {\r
-  font-weight: bold;\r
-  color: #083194;\r
-}\r
-\r
-h1, h2, h3, h4, h5, h6 {\r
-  color: #527bbd;\r
-  margin-top: 1.2em;\r
-  margin-bottom: 0.5em;\r
-  line-height: 1.3;\r
-}\r
-\r
-h1, h2, h3 {\r
-  border-bottom: 2px solid silver;\r
-}\r
-h2 {\r
-  padding-top: 0.5em;\r
-}\r
-h3 {\r
-  float: left;\r
-}\r
-h3 + * {\r
-  clear: left;\r
-}\r
-h5 {\r
-  font-size: 1.0em;\r
-}\r
-\r
-div.sectionbody {\r
-  margin-left: 0;\r
-}\r
-\r
-hr {\r
-  border: 1px solid silver;\r
-}\r
-\r
-p {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0.5em;\r
-}\r
-\r
-ul, ol, li > p {\r
-  margin-top: 0;\r
-}\r
-ul > li     { color: #aaa; }\r
-ul > li > * { color: black; }\r
-\r
-.monospaced, code, pre {\r
-  font-family: "Courier New", Courier, monospace;\r
-  font-size: inherit;\r
-  color: navy;\r
-  padding: 0;\r
-  margin: 0;\r
-}\r
-\r
-\r
-#author {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  font-size: 1.1em;\r
-}\r
-#email {\r
-}\r
-#revnumber, #revdate, #revremark {\r
-}\r
-\r
-#footer {\r
-  font-size: small;\r
-  border-top: 2px solid silver;\r
-  padding-top: 0.5em;\r
-  margin-top: 4.0em;\r
-}\r
-#footer-text {\r
-  float: left;\r
-  padding-bottom: 0.5em;\r
-}\r
-#footer-badges {\r
-  float: right;\r
-  padding-bottom: 0.5em;\r
-}\r
-\r
-#preamble {\r
-  margin-top: 1.5em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.imageblock, div.exampleblock, div.verseblock,\r
-div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
-div.admonitionblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.admonitionblock {\r
-  margin-top: 2.0em;\r
-  margin-bottom: 2.0em;\r
-  margin-right: 10%;\r
-  color: #606060;\r
-}\r
-\r
-div.content { /* Block element content. */\r
-  padding: 0;\r
-}\r
-\r
-/* Block element titles. */\r
-div.title, caption.title {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  text-align: left;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.5em;\r
-}\r
-div.title + * {\r
-  margin-top: 0;\r
-}\r
-\r
-td div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content + div.title {\r
-  margin-top: 0.0em;\r
-}\r
-\r
-div.sidebarblock > div.content {\r
-  background: #ffffee;\r
-  border: 1px solid #dddddd;\r
-  border-left: 4px solid #f0f0f0;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.listingblock > div.content {\r
-  border: 1px solid #dddddd;\r
-  border-left: 5px solid #f0f0f0;\r
-  background: #f8f8f8;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.quoteblock, div.verseblock {\r
-  padding-left: 1.0em;\r
-  margin-left: 1.0em;\r
-  margin-right: 10%;\r
-  border-left: 5px solid #f0f0f0;\r
-  color: #888;\r
-}\r
-\r
-div.quoteblock > div.attribution {\r
-  padding-top: 0.5em;\r
-  text-align: right;\r
-}\r
-\r
-div.verseblock > pre.content {\r
-  font-family: inherit;\r
-  font-size: inherit;\r
-}\r
-div.verseblock > div.attribution {\r
-  padding-top: 0.75em;\r
-  text-align: left;\r
-}\r
-/* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
-div.verseblock + div.attribution {\r
-  text-align: left;\r
-}\r
-\r
-div.admonitionblock .icon {\r
-  vertical-align: top;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  text-decoration: underline;\r
-  color: #527bbd;\r
-  padding-right: 0.5em;\r
-}\r
-div.admonitionblock td.content {\r
-  padding-left: 0.5em;\r
-  border-left: 3px solid #dddddd;\r
-}\r
-\r
-div.exampleblock > div.content {\r
-  border-left: 3px solid #dddddd;\r
-  padding-left: 0.5em;\r
-}\r
-\r
-div.imageblock div.content { padding-left: 0; }\r
-span.image img { border-style: none; }\r
-a.image:visited { color: white; }\r
-\r
-dl {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-dt {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0;\r
-  font-style: normal;\r
-  color: navy;\r
-}\r
-dd > *:first-child {\r
-  margin-top: 0.1em;\r
-}\r
-\r
-ul, ol {\r
-    list-style-position: outside;\r
-}\r
-ol.arabic {\r
-  list-style-type: decimal;\r
-}\r
-ol.loweralpha {\r
-  list-style-type: lower-alpha;\r
-}\r
-ol.upperalpha {\r
-  list-style-type: upper-alpha;\r
-}\r
-ol.lowerroman {\r
-  list-style-type: lower-roman;\r
-}\r
-ol.upperroman {\r
-  list-style-type: upper-roman;\r
-}\r
-\r
-div.compact ul, div.compact ol,\r
-div.compact p, div.compact p,\r
-div.compact div, div.compact div {\r
-  margin-top: 0.1em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-tfoot {\r
-  font-weight: bold;\r
-}\r
-td > div.verse {\r
-  white-space: pre;\r
-}\r
-\r
-div.hdlist {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-div.hdlist tr {\r
-  padding-bottom: 15px;\r
-}\r
-dt.hdlist1.strong, td.hdlist1.strong {\r
-  font-weight: bold;\r
-}\r
-td.hdlist1 {\r
-  vertical-align: top;\r
-  font-style: normal;\r
-  padding-right: 0.8em;\r
-  color: navy;\r
-}\r
-td.hdlist2 {\r
-  vertical-align: top;\r
-}\r
-div.hdlist.compact tr {\r
-  margin: 0;\r
-  padding-bottom: 0;\r
-}\r
-\r
-.comment {\r
-  background: yellow;\r
-}\r
-\r
-.footnote, .footnoteref {\r
-  font-size: 0.8em;\r
-}\r
-\r
-span.footnote, span.footnoteref {\r
-  vertical-align: super;\r
-}\r
-\r
-#footnotes {\r
-  margin: 20px 0 20px 0;\r
-  padding: 7px 0 0 0;\r
-}\r
-\r
-#footnotes div.footnote {\r
-  margin: 0 0 5px 0;\r
-}\r
-\r
-#footnotes hr {\r
-  border: none;\r
-  border-top: 1px solid silver;\r
-  height: 1px;\r
-  text-align: left;\r
-  margin-left: 0;\r
-  width: 20%;\r
-  min-width: 100px;\r
-}\r
-\r
-div.colist td {\r
-  padding-right: 0.5em;\r
-  padding-bottom: 0.3em;\r
-  vertical-align: top;\r
-}\r
-div.colist td img {\r
-  margin-top: 0.3em;\r
-}\r
-\r
-@media print {\r
-  #footer-badges { display: none; }\r
-}\r
-\r
-#toc {\r
-  margin-bottom: 2.5em;\r
-}\r
-\r
-#toctitle {\r
-  color: #527bbd;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
-  margin-top: 0;\r
-  margin-bottom: 0;\r
-}\r
-div.toclevel2 {\r
-  margin-left: 2em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel3 {\r
-  margin-left: 4em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel4 {\r
-  margin-left: 6em;\r
-  font-size: 0.9em;\r
-}\r
-\r
-span.aqua { color: aqua; }\r
-span.black { color: black; }\r
-span.blue { color: blue; }\r
-span.fuchsia { color: fuchsia; }\r
-span.gray { color: gray; }\r
-span.green { color: green; }\r
-span.lime { color: lime; }\r
-span.maroon { color: maroon; }\r
-span.navy { color: navy; }\r
-span.olive { color: olive; }\r
-span.purple { color: purple; }\r
-span.red { color: red; }\r
-span.silver { color: silver; }\r
-span.teal { color: teal; }\r
-span.white { color: white; }\r
-span.yellow { color: yellow; }\r
-\r
-span.aqua-background { background: aqua; }\r
-span.black-background { background: black; }\r
-span.blue-background { background: blue; }\r
-span.fuchsia-background { background: fuchsia; }\r
-span.gray-background { background: gray; }\r
-span.green-background { background: green; }\r
-span.lime-background { background: lime; }\r
-span.maroon-background { background: maroon; }\r
-span.navy-background { background: navy; }\r
-span.olive-background { background: olive; }\r
-span.purple-background { background: purple; }\r
-span.red-background { background: red; }\r
-span.silver-background { background: silver; }\r
-span.teal-background { background: teal; }\r
-span.white-background { background: white; }\r
-span.yellow-background { background: yellow; }\r
-\r
-span.big { font-size: 2em; }\r
-span.small { font-size: 0.6em; }\r
-\r
-span.underline { text-decoration: underline; }\r
-span.overline { text-decoration: overline; }\r
-span.line-through { text-decoration: line-through; }\r
-\r
-div.unbreakable { page-break-inside: avoid; }\r
-\r
-\r
-/*\r
- * xhtml11 specific\r
- *\r
- * */\r
-\r
-div.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.tableblock > table {\r
-  border: 3px solid #527bbd;\r
-}\r
-thead, p.table.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.table {\r
-  margin-top: 0;\r
-}\r
-/* Because the table frame attribute is overridden by CSS in most browsers. */\r
-div.tableblock > table[frame="void"] {\r
-  border-style: none;\r
-}\r
-div.tableblock > table[frame="hsides"] {\r
-  border-left-style: none;\r
-  border-right-style: none;\r
-}\r
-div.tableblock > table[frame="vsides"] {\r
-  border-top-style: none;\r
-  border-bottom-style: none;\r
-}\r
-\r
-\r
-/*\r
- * html5 specific\r
- *\r
- * */\r
-\r
-table.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-thead, p.tableblock.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.tableblock {\r
-  margin-top: 0;\r
-}\r
-table.tableblock {\r
-  border-width: 3px;\r
-  border-spacing: 0px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-  border-collapse: collapse;\r
-}\r
-th.tableblock, td.tableblock {\r
-  border-width: 1px;\r
-  padding: 4px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-}\r
-\r
-table.tableblock.frame-topbot {\r
-  border-left-style: hidden;\r
-  border-right-style: hidden;\r
-}\r
-table.tableblock.frame-sides {\r
-  border-top-style: hidden;\r
-  border-bottom-style: hidden;\r
-}\r
-table.tableblock.frame-none {\r
-  border-style: hidden;\r
-}\r
-\r
-th.tableblock.halign-left, td.tableblock.halign-left {\r
-  text-align: left;\r
-}\r
-th.tableblock.halign-center, td.tableblock.halign-center {\r
-  text-align: center;\r
-}\r
-th.tableblock.halign-right, td.tableblock.halign-right {\r
-  text-align: right;\r
-}\r
-\r
-th.tableblock.valign-top, td.tableblock.valign-top {\r
-  vertical-align: top;\r
-}\r
-th.tableblock.valign-middle, td.tableblock.valign-middle {\r
-  vertical-align: middle;\r
-}\r
-th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
-  vertical-align: bottom;\r
-}\r
-\r
-\r
-/*\r
- * manpage specific\r
- *\r
- * */\r
-\r
-body.manpage h1 {\r
-  padding-top: 0.5em;\r
-  padding-bottom: 0.5em;\r
-  border-top: 2px solid silver;\r
-  border-bottom: 2px solid silver;\r
-}\r
-body.manpage h2 {\r
-  border-style: none;\r
-}\r
-body.manpage div.sectionbody {\r
-  margin-left: 3em;\r
-}\r
-\r
-@media print {\r
-  body.manpage div#toc { display: none; }\r
-}\r
-\r
-\r
-</style>\r
-<script type="text/javascript">\r
-/*<![CDATA[*/\r
-var asciidoc = {  // Namespace.\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Table Of Contents generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Author: Mihai Bazon, September 2002\r
- * http://students.infoiasi.ro/~mishoo\r
- *\r
- * Table Of Content generator\r
- * Version: 0.4\r
- *\r
- * Feel free to use this script under the terms of the GNU General Public\r
- * License, as long as you do not remove or alter this notice.\r
- */\r
-\r
- /* modified by Troy D. Hanson, September 2006. License: GPL */\r
- /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
-\r
-// toclevels = 1..4.\r
-toc: function (toclevels) {\r
-\r
-  function getText(el) {\r
-    var text = "";\r
-    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
-        text += i.data;\r
-      else if (i.firstChild != null)\r
-        text += getText(i);\r
-    }\r
-    return text;\r
-  }\r
-\r
-  function TocEntry(el, text, toclevel) {\r
-    this.element = el;\r
-    this.text = text;\r
-    this.toclevel = toclevel;\r
-  }\r
-\r
-  function tocEntries(el, toclevels) {\r
-    var result = new Array;\r
-    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
-    // Function that scans the DOM tree for header elements (the DOM2\r
-    // nodeIterator API would be a better technique but not supported by all\r
-    // browsers).\r
-    var iterate = function (el) {\r
-      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
-          var mo = re.exec(i.tagName);\r
-          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
-            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
-          }\r
-          iterate(i);\r
-        }\r
-      }\r
-    }\r
-    iterate(el);\r
-    return result;\r
-  }\r
-\r
-  var toc = document.getElementById("toc");\r
-  if (!toc) {\r
-    return;\r
-  }\r
-\r
-  // Delete existing TOC entries in case we're reloading the TOC.\r
-  var tocEntriesToRemove = [];\r
-  var i;\r
-  for (i = 0; i < toc.childNodes.length; i++) {\r
-    var entry = toc.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div'\r
-     && entry.getAttribute("class")\r
-     && entry.getAttribute("class").match(/^toclevel/))\r
-      tocEntriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
-    toc.removeChild(tocEntriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild TOC entries.\r
-  var entries = tocEntries(document.getElementById("content"), toclevels);\r
-  for (var i = 0; i < entries.length; ++i) {\r
-    var entry = entries[i];\r
-    if (entry.element.id == "")\r
-      entry.element.id = "_toc_" + i;\r
-    var a = document.createElement("a");\r
-    a.href = "#" + entry.element.id;\r
-    a.appendChild(document.createTextNode(entry.text));\r
-    var div = document.createElement("div");\r
-    div.appendChild(a);\r
-    div.className = "toclevel" + entry.toclevel;\r
-    toc.appendChild(div);\r
-  }\r
-  if (entries.length == 0)\r
-    toc.parentNode.removeChild(toc);\r
-},\r
-\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Footnotes generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Based on footnote generation code from:\r
- * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
- */\r
-\r
-footnotes: function () {\r
-  // Delete existing footnote entries in case we're reloading the footnodes.\r
-  var i;\r
-  var noteholder = document.getElementById("footnotes");\r
-  if (!noteholder) {\r
-    return;\r
-  }\r
-  var entriesToRemove = [];\r
-  for (i = 0; i < noteholder.childNodes.length; i++) {\r
-    var entry = noteholder.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
-      entriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < entriesToRemove.length; i++) {\r
-    noteholder.removeChild(entriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild footnote entries.\r
-  var cont = document.getElementById("content");\r
-  var spans = cont.getElementsByTagName("span");\r
-  var refs = {};\r
-  var n = 0;\r
-  for (i=0; i<spans.length; i++) {\r
-    if (spans[i].className == "footnote") {\r
-      n++;\r
-      var note = spans[i].getAttribute("data-note");\r
-      if (!note) {\r
-        // Use [\s\S] in place of . so multi-line matches work.\r
-        // Because JavaScript has no s (dotall) regex flag.\r
-        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
-        spans[i].innerHTML =\r
-          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-        spans[i].setAttribute("data-note", note);\r
-      }\r
-      noteholder.innerHTML +=\r
-        "<div class='footnote' id='_footnote_" + n + "'>" +\r
-        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
-        n + "</a>. " + note + "</div>";\r
-      var id =spans[i].getAttribute("id");\r
-      if (id != null) refs["#"+id] = n;\r
-    }\r
-  }\r
-  if (n == 0)\r
-    noteholder.parentNode.removeChild(noteholder);\r
-  else {\r
-    // Process footnoterefs.\r
-    for (i=0; i<spans.length; i++) {\r
-      if (spans[i].className == "footnoteref") {\r
-        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
-        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
-        n = refs[href];\r
-        spans[i].innerHTML =\r
-          "[<a href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-      }\r
-    }\r
-  }\r
-},\r
-\r
-install: function(toclevels) {\r
-  var timerId;\r
-\r
-  function reinstall() {\r
-    asciidoc.footnotes();\r
-    if (toclevels) {\r
-      asciidoc.toc(toclevels);\r
-    }\r
-  }\r
-\r
-  function reinstallAndRemoveTimer() {\r
-    clearInterval(timerId);\r
-    reinstall();\r
-  }\r
-\r
-  timerId = setInterval(reinstall, 500);\r
-  if (document.addEventListener)\r
-    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
-  else\r
-    window.onload = reinstallAndRemoveTimer;\r
-}\r
-\r
-}\r
-asciidoc.install();\r
-/*]]>*/\r
-</script>\r
-</head>\r
-<body class="manpage">\r
-<div id="header">\r
-<h1>\r
-nvme-lnvm-init(1) Manual Page\r
-</h1>\r
-<h2>NAME</h2>\r
-<div class="sectionbody">\r
-<p>nvme-lnvm-init -\r
-   Initialize LightNVM device with media manager\r
-</p>\r
-</div>\r
-</div>\r
-<div id="content">\r
-<div class="sect1">\r
-<h2 id="_synopsis">SYNOPSIS</h2>\r
-<div class="sectionbody">\r
-<div class="verseblock">\r
-<pre class="content"><em>nvme lnvm-init</em> [--device-name=&lt;DEVICE&gt; | -d &lt;DEVICE&gt;]\r
-                        [--mediamgr-name | -m]</pre>\r
-<div class="attribution">\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_description">DESCRIPTION</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Initialize LightNVM device. A LightNVM/Open-Channel SSD must have a media\r
-manager associated before it can  be exposed to the user. The default is to\r
-initialize the general media manager on top of the device.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_options">OPTIONS</h2>\r
-<div class="sectionbody">\r
-<div class="dlist"><dl>\r
-<dt class="hdlist1">\r
---device-name=&lt;DEVICE&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--d &lt;DEVICE&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Device name to initialize.\r
-</p>\r
-</dd>\r
-<dt class="hdlist1">\r
---mediamgr-name=&lt;MediaMgr&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--m &lt;MediaMgr&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Media Manager name to use for initialization.\r
-</p>\r
-</dd>\r
-</dl></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_examples">EXAMPLES</h2>\r
-<div class="sectionbody">\r
-<div class="ulist"><ul>\r
-<li>\r
-<p>\r
-Initialize nvme0n1\r
-</p>\r
-</li>\r
-</ul></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code># nvme lnvm-init -d nvme0n1</code></pre>\r
-</div></div>\r
-<div class="ulist"><ul>\r
-<li>\r
-<p>\r
-Initialize nvme0n1 with gennvm media manager (default media manager)\r
-</p>\r
-</li>\r
-</ul></div>\r
-<div class="listingblock">\r
-<div class="content">\r
-<pre><code># nvme lnvm-init -d nvme0n1 -m gennvm</code></pre>\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_nvme">NVME</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Part of the nvme-user suite</p></div>\r
-</div>\r
-</div>\r
-</div>\r
-<div id="footnotes"><hr /></div>\r
-<div id="footer">\r
-<div id="footer-text">\r
-Last updated 2017-02-27 10:11:58 EST\r
-</div>\r
-</div>\r
-</body>\r
-</html>\r
diff --git a/Documentation/nvme-lnvm-init.txt b/Documentation/nvme-lnvm-init.txt
deleted file mode 100644 (file)
index 0d922a9..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-nvme-lnvm-init(1)
-=================
-
-NAME
-----
-nvme-lnvm-init - Initialize LightNVM device with media manager
-
-SYNOPSIS
---------
-[verse]
-'nvme lnvm-init' [--device-name=<DEVICE> | -d <DEVICE>]
-                       [--mediamgr-name | -m]
-
-DESCRIPTION
------------
-Initialize LightNVM device. A LightNVM/Open-Channel SSD must have a media
-manager associated before it can  be exposed to the user. The default is to
-initialize the general media manager on top of the device.
-
-OPTIONS
--------
---device-name=<DEVICE>::
--d <DEVICE>::
-       Device name to initialize.
-
---mediamgr-name=<MediaMgr>::
--m <MediaMgr>::
-       Media Manager name to use for initialization.
-
-EXAMPLES
---------
-* Initialize nvme0n1
-------------
-# nvme lnvm-init -d nvme0n1
-------------
-
-* Initialize nvme0n1 with gennvm media manager (default media manager)
-------------
-# nvme lnvm-init -d nvme0n1 -m gennvm
-------------
-
-NVME
-----
-Part of the nvme-user suite
diff --git a/Documentation/nvme-lnvm-list.1 b/Documentation/nvme-lnvm-list.1
deleted file mode 100644 (file)
index 08ecc6d..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-'\" t
-.\"     Title: nvme-lnvm-list
-.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
-.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 10/20/2020
-.\"    Manual: NVMe Manual
-.\"    Source: NVMe
-.\"  Language: English
-.\"
-.TH "NVME\-LNVM\-LIST" "1" "10/20/2020" "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-lnvm-list \- List all recognized LightNVM NVMe devices
-.SH "SYNOPSIS"
-.sp
-.nf
-\fInvme lnvm\-list\fR
-.fi
-.SH "DESCRIPTION"
-.sp
-List all registered LightNVM devices\&.
-.SH "OPTIONS"
-.sp
-No options yet\&.
-.SH "EXAMPLES"
-.sp
-No examples yet\&.
-.SH "NVME"
-.sp
-Part of the nvme\-user suite
diff --git a/Documentation/nvme-lnvm-list.html b/Documentation/nvme-lnvm-list.html
deleted file mode 100644 (file)
index 0f42d8f..0000000
+++ /dev/null
@@ -1,786 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
-    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
-<head>\r
-<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc 8.6.8" />\r
-<title>nvme-lnvm-list(1)</title>\r
-<style type="text/css">\r
-/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
-\r
-/* Default font. */\r
-body {\r
-  font-family: Georgia,serif;\r
-}\r
-\r
-/* Title font. */\r
-h1, h2, h3, h4, h5, h6,\r
-div.title, caption.title,\r
-thead, p.table.header,\r
-#toctitle,\r
-#author, #revnumber, #revdate, #revremark,\r
-#footer {\r
-  font-family: Arial,Helvetica,sans-serif;\r
-}\r
-\r
-body {\r
-  margin: 1em 5% 1em 5%;\r
-}\r
-\r
-a {\r
-  color: blue;\r
-  text-decoration: underline;\r
-}\r
-a:visited {\r
-  color: fuchsia;\r
-}\r
-\r
-em {\r
-  font-style: italic;\r
-  color: navy;\r
-}\r
-\r
-strong {\r
-  font-weight: bold;\r
-  color: #083194;\r
-}\r
-\r
-h1, h2, h3, h4, h5, h6 {\r
-  color: #527bbd;\r
-  margin-top: 1.2em;\r
-  margin-bottom: 0.5em;\r
-  line-height: 1.3;\r
-}\r
-\r
-h1, h2, h3 {\r
-  border-bottom: 2px solid silver;\r
-}\r
-h2 {\r
-  padding-top: 0.5em;\r
-}\r
-h3 {\r
-  float: left;\r
-}\r
-h3 + * {\r
-  clear: left;\r
-}\r
-h5 {\r
-  font-size: 1.0em;\r
-}\r
-\r
-div.sectionbody {\r
-  margin-left: 0;\r
-}\r
-\r
-hr {\r
-  border: 1px solid silver;\r
-}\r
-\r
-p {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0.5em;\r
-}\r
-\r
-ul, ol, li > p {\r
-  margin-top: 0;\r
-}\r
-ul > li     { color: #aaa; }\r
-ul > li > * { color: black; }\r
-\r
-.monospaced, code, pre {\r
-  font-family: "Courier New", Courier, monospace;\r
-  font-size: inherit;\r
-  color: navy;\r
-  padding: 0;\r
-  margin: 0;\r
-}\r
-\r
-\r
-#author {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  font-size: 1.1em;\r
-}\r
-#email {\r
-}\r
-#revnumber, #revdate, #revremark {\r
-}\r
-\r
-#footer {\r
-  font-size: small;\r
-  border-top: 2px solid silver;\r
-  padding-top: 0.5em;\r
-  margin-top: 4.0em;\r
-}\r
-#footer-text {\r
-  float: left;\r
-  padding-bottom: 0.5em;\r
-}\r
-#footer-badges {\r
-  float: right;\r
-  padding-bottom: 0.5em;\r
-}\r
-\r
-#preamble {\r
-  margin-top: 1.5em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.imageblock, div.exampleblock, div.verseblock,\r
-div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
-div.admonitionblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.admonitionblock {\r
-  margin-top: 2.0em;\r
-  margin-bottom: 2.0em;\r
-  margin-right: 10%;\r
-  color: #606060;\r
-}\r
-\r
-div.content { /* Block element content. */\r
-  padding: 0;\r
-}\r
-\r
-/* Block element titles. */\r
-div.title, caption.title {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  text-align: left;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.5em;\r
-}\r
-div.title + * {\r
-  margin-top: 0;\r
-}\r
-\r
-td div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content + div.title {\r
-  margin-top: 0.0em;\r
-}\r
-\r
-div.sidebarblock > div.content {\r
-  background: #ffffee;\r
-  border: 1px solid #dddddd;\r
-  border-left: 4px solid #f0f0f0;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.listingblock > div.content {\r
-  border: 1px solid #dddddd;\r
-  border-left: 5px solid #f0f0f0;\r
-  background: #f8f8f8;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.quoteblock, div.verseblock {\r
-  padding-left: 1.0em;\r
-  margin-left: 1.0em;\r
-  margin-right: 10%;\r
-  border-left: 5px solid #f0f0f0;\r
-  color: #888;\r
-}\r
-\r
-div.quoteblock > div.attribution {\r
-  padding-top: 0.5em;\r
-  text-align: right;\r
-}\r
-\r
-div.verseblock > pre.content {\r
-  font-family: inherit;\r
-  font-size: inherit;\r
-}\r
-div.verseblock > div.attribution {\r
-  padding-top: 0.75em;\r
-  text-align: left;\r
-}\r
-/* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
-div.verseblock + div.attribution {\r
-  text-align: left;\r
-}\r
-\r
-div.admonitionblock .icon {\r
-  vertical-align: top;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  text-decoration: underline;\r
-  color: #527bbd;\r
-  padding-right: 0.5em;\r
-}\r
-div.admonitionblock td.content {\r
-  padding-left: 0.5em;\r
-  border-left: 3px solid #dddddd;\r
-}\r
-\r
-div.exampleblock > div.content {\r
-  border-left: 3px solid #dddddd;\r
-  padding-left: 0.5em;\r
-}\r
-\r
-div.imageblock div.content { padding-left: 0; }\r
-span.image img { border-style: none; }\r
-a.image:visited { color: white; }\r
-\r
-dl {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-dt {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0;\r
-  font-style: normal;\r
-  color: navy;\r
-}\r
-dd > *:first-child {\r
-  margin-top: 0.1em;\r
-}\r
-\r
-ul, ol {\r
-    list-style-position: outside;\r
-}\r
-ol.arabic {\r
-  list-style-type: decimal;\r
-}\r
-ol.loweralpha {\r
-  list-style-type: lower-alpha;\r
-}\r
-ol.upperalpha {\r
-  list-style-type: upper-alpha;\r
-}\r
-ol.lowerroman {\r
-  list-style-type: lower-roman;\r
-}\r
-ol.upperroman {\r
-  list-style-type: upper-roman;\r
-}\r
-\r
-div.compact ul, div.compact ol,\r
-div.compact p, div.compact p,\r
-div.compact div, div.compact div {\r
-  margin-top: 0.1em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-tfoot {\r
-  font-weight: bold;\r
-}\r
-td > div.verse {\r
-  white-space: pre;\r
-}\r
-\r
-div.hdlist {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-div.hdlist tr {\r
-  padding-bottom: 15px;\r
-}\r
-dt.hdlist1.strong, td.hdlist1.strong {\r
-  font-weight: bold;\r
-}\r
-td.hdlist1 {\r
-  vertical-align: top;\r
-  font-style: normal;\r
-  padding-right: 0.8em;\r
-  color: navy;\r
-}\r
-td.hdlist2 {\r
-  vertical-align: top;\r
-}\r
-div.hdlist.compact tr {\r
-  margin: 0;\r
-  padding-bottom: 0;\r
-}\r
-\r
-.comment {\r
-  background: yellow;\r
-}\r
-\r
-.footnote, .footnoteref {\r
-  font-size: 0.8em;\r
-}\r
-\r
-span.footnote, span.footnoteref {\r
-  vertical-align: super;\r
-}\r
-\r
-#footnotes {\r
-  margin: 20px 0 20px 0;\r
-  padding: 7px 0 0 0;\r
-}\r
-\r
-#footnotes div.footnote {\r
-  margin: 0 0 5px 0;\r
-}\r
-\r
-#footnotes hr {\r
-  border: none;\r
-  border-top: 1px solid silver;\r
-  height: 1px;\r
-  text-align: left;\r
-  margin-left: 0;\r
-  width: 20%;\r
-  min-width: 100px;\r
-}\r
-\r
-div.colist td {\r
-  padding-right: 0.5em;\r
-  padding-bottom: 0.3em;\r
-  vertical-align: top;\r
-}\r
-div.colist td img {\r
-  margin-top: 0.3em;\r
-}\r
-\r
-@media print {\r
-  #footer-badges { display: none; }\r
-}\r
-\r
-#toc {\r
-  margin-bottom: 2.5em;\r
-}\r
-\r
-#toctitle {\r
-  color: #527bbd;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
-  margin-top: 0;\r
-  margin-bottom: 0;\r
-}\r
-div.toclevel2 {\r
-  margin-left: 2em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel3 {\r
-  margin-left: 4em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel4 {\r
-  margin-left: 6em;\r
-  font-size: 0.9em;\r
-}\r
-\r
-span.aqua { color: aqua; }\r
-span.black { color: black; }\r
-span.blue { color: blue; }\r
-span.fuchsia { color: fuchsia; }\r
-span.gray { color: gray; }\r
-span.green { color: green; }\r
-span.lime { color: lime; }\r
-span.maroon { color: maroon; }\r
-span.navy { color: navy; }\r
-span.olive { color: olive; }\r
-span.purple { color: purple; }\r
-span.red { color: red; }\r
-span.silver { color: silver; }\r
-span.teal { color: teal; }\r
-span.white { color: white; }\r
-span.yellow { color: yellow; }\r
-\r
-span.aqua-background { background: aqua; }\r
-span.black-background { background: black; }\r
-span.blue-background { background: blue; }\r
-span.fuchsia-background { background: fuchsia; }\r
-span.gray-background { background: gray; }\r
-span.green-background { background: green; }\r
-span.lime-background { background: lime; }\r
-span.maroon-background { background: maroon; }\r
-span.navy-background { background: navy; }\r
-span.olive-background { background: olive; }\r
-span.purple-background { background: purple; }\r
-span.red-background { background: red; }\r
-span.silver-background { background: silver; }\r
-span.teal-background { background: teal; }\r
-span.white-background { background: white; }\r
-span.yellow-background { background: yellow; }\r
-\r
-span.big { font-size: 2em; }\r
-span.small { font-size: 0.6em; }\r
-\r
-span.underline { text-decoration: underline; }\r
-span.overline { text-decoration: overline; }\r
-span.line-through { text-decoration: line-through; }\r
-\r
-div.unbreakable { page-break-inside: avoid; }\r
-\r
-\r
-/*\r
- * xhtml11 specific\r
- *\r
- * */\r
-\r
-div.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.tableblock > table {\r
-  border: 3px solid #527bbd;\r
-}\r
-thead, p.table.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.table {\r
-  margin-top: 0;\r
-}\r
-/* Because the table frame attribute is overridden by CSS in most browsers. */\r
-div.tableblock > table[frame="void"] {\r
-  border-style: none;\r
-}\r
-div.tableblock > table[frame="hsides"] {\r
-  border-left-style: none;\r
-  border-right-style: none;\r
-}\r
-div.tableblock > table[frame="vsides"] {\r
-  border-top-style: none;\r
-  border-bottom-style: none;\r
-}\r
-\r
-\r
-/*\r
- * html5 specific\r
- *\r
- * */\r
-\r
-table.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-thead, p.tableblock.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.tableblock {\r
-  margin-top: 0;\r
-}\r
-table.tableblock {\r
-  border-width: 3px;\r
-  border-spacing: 0px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-  border-collapse: collapse;\r
-}\r
-th.tableblock, td.tableblock {\r
-  border-width: 1px;\r
-  padding: 4px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-}\r
-\r
-table.tableblock.frame-topbot {\r
-  border-left-style: hidden;\r
-  border-right-style: hidden;\r
-}\r
-table.tableblock.frame-sides {\r
-  border-top-style: hidden;\r
-  border-bottom-style: hidden;\r
-}\r
-table.tableblock.frame-none {\r
-  border-style: hidden;\r
-}\r
-\r
-th.tableblock.halign-left, td.tableblock.halign-left {\r
-  text-align: left;\r
-}\r
-th.tableblock.halign-center, td.tableblock.halign-center {\r
-  text-align: center;\r
-}\r
-th.tableblock.halign-right, td.tableblock.halign-right {\r
-  text-align: right;\r
-}\r
-\r
-th.tableblock.valign-top, td.tableblock.valign-top {\r
-  vertical-align: top;\r
-}\r
-th.tableblock.valign-middle, td.tableblock.valign-middle {\r
-  vertical-align: middle;\r
-}\r
-th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
-  vertical-align: bottom;\r
-}\r
-\r
-\r
-/*\r
- * manpage specific\r
- *\r
- * */\r
-\r
-body.manpage h1 {\r
-  padding-top: 0.5em;\r
-  padding-bottom: 0.5em;\r
-  border-top: 2px solid silver;\r
-  border-bottom: 2px solid silver;\r
-}\r
-body.manpage h2 {\r
-  border-style: none;\r
-}\r
-body.manpage div.sectionbody {\r
-  margin-left: 3em;\r
-}\r
-\r
-@media print {\r
-  body.manpage div#toc { display: none; }\r
-}\r
-\r
-\r
-</style>\r
-<script type="text/javascript">\r
-/*<![CDATA[*/\r
-var asciidoc = {  // Namespace.\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Table Of Contents generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Author: Mihai Bazon, September 2002\r
- * http://students.infoiasi.ro/~mishoo\r
- *\r
- * Table Of Content generator\r
- * Version: 0.4\r
- *\r
- * Feel free to use this script under the terms of the GNU General Public\r
- * License, as long as you do not remove or alter this notice.\r
- */\r
-\r
- /* modified by Troy D. Hanson, September 2006. License: GPL */\r
- /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
-\r
-// toclevels = 1..4.\r
-toc: function (toclevels) {\r
-\r
-  function getText(el) {\r
-    var text = "";\r
-    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
-        text += i.data;\r
-      else if (i.firstChild != null)\r
-        text += getText(i);\r
-    }\r
-    return text;\r
-  }\r
-\r
-  function TocEntry(el, text, toclevel) {\r
-    this.element = el;\r
-    this.text = text;\r
-    this.toclevel = toclevel;\r
-  }\r
-\r
-  function tocEntries(el, toclevels) {\r
-    var result = new Array;\r
-    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
-    // Function that scans the DOM tree for header elements (the DOM2\r
-    // nodeIterator API would be a better technique but not supported by all\r
-    // browsers).\r
-    var iterate = function (el) {\r
-      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
-          var mo = re.exec(i.tagName);\r
-          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
-            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
-          }\r
-          iterate(i);\r
-        }\r
-      }\r
-    }\r
-    iterate(el);\r
-    return result;\r
-  }\r
-\r
-  var toc = document.getElementById("toc");\r
-  if (!toc) {\r
-    return;\r
-  }\r
-\r
-  // Delete existing TOC entries in case we're reloading the TOC.\r
-  var tocEntriesToRemove = [];\r
-  var i;\r
-  for (i = 0; i < toc.childNodes.length; i++) {\r
-    var entry = toc.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div'\r
-     && entry.getAttribute("class")\r
-     && entry.getAttribute("class").match(/^toclevel/))\r
-      tocEntriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
-    toc.removeChild(tocEntriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild TOC entries.\r
-  var entries = tocEntries(document.getElementById("content"), toclevels);\r
-  for (var i = 0; i < entries.length; ++i) {\r
-    var entry = entries[i];\r
-    if (entry.element.id == "")\r
-      entry.element.id = "_toc_" + i;\r
-    var a = document.createElement("a");\r
-    a.href = "#" + entry.element.id;\r
-    a.appendChild(document.createTextNode(entry.text));\r
-    var div = document.createElement("div");\r
-    div.appendChild(a);\r
-    div.className = "toclevel" + entry.toclevel;\r
-    toc.appendChild(div);\r
-  }\r
-  if (entries.length == 0)\r
-    toc.parentNode.removeChild(toc);\r
-},\r
-\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Footnotes generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Based on footnote generation code from:\r
- * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
- */\r
-\r
-footnotes: function () {\r
-  // Delete existing footnote entries in case we're reloading the footnodes.\r
-  var i;\r
-  var noteholder = document.getElementById("footnotes");\r
-  if (!noteholder) {\r
-    return;\r
-  }\r
-  var entriesToRemove = [];\r
-  for (i = 0; i < noteholder.childNodes.length; i++) {\r
-    var entry = noteholder.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
-      entriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < entriesToRemove.length; i++) {\r
-    noteholder.removeChild(entriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild footnote entries.\r
-  var cont = document.getElementById("content");\r
-  var spans = cont.getElementsByTagName("span");\r
-  var refs = {};\r
-  var n = 0;\r
-  for (i=0; i<spans.length; i++) {\r
-    if (spans[i].className == "footnote") {\r
-      n++;\r
-      var note = spans[i].getAttribute("data-note");\r
-      if (!note) {\r
-        // Use [\s\S] in place of . so multi-line matches work.\r
-        // Because JavaScript has no s (dotall) regex flag.\r
-        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
-        spans[i].innerHTML =\r
-          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-        spans[i].setAttribute("data-note", note);\r
-      }\r
-      noteholder.innerHTML +=\r
-        "<div class='footnote' id='_footnote_" + n + "'>" +\r
-        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
-        n + "</a>. " + note + "</div>";\r
-      var id =spans[i].getAttribute("id");\r
-      if (id != null) refs["#"+id] = n;\r
-    }\r
-  }\r
-  if (n == 0)\r
-    noteholder.parentNode.removeChild(noteholder);\r
-  else {\r
-    // Process footnoterefs.\r
-    for (i=0; i<spans.length; i++) {\r
-      if (spans[i].className == "footnoteref") {\r
-        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
-        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
-        n = refs[href];\r
-        spans[i].innerHTML =\r
-          "[<a href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-      }\r
-    }\r
-  }\r
-},\r
-\r
-install: function(toclevels) {\r
-  var timerId;\r
-\r
-  function reinstall() {\r
-    asciidoc.footnotes();\r
-    if (toclevels) {\r
-      asciidoc.toc(toclevels);\r
-    }\r
-  }\r
-\r
-  function reinstallAndRemoveTimer() {\r
-    clearInterval(timerId);\r
-    reinstall();\r
-  }\r
-\r
-  timerId = setInterval(reinstall, 500);\r
-  if (document.addEventListener)\r
-    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
-  else\r
-    window.onload = reinstallAndRemoveTimer;\r
-}\r
-\r
-}\r
-asciidoc.install();\r
-/*]]>*/\r
-</script>\r
-</head>\r
-<body class="manpage">\r
-<div id="header">\r
-<h1>\r
-nvme-lnvm-list(1) Manual Page\r
-</h1>\r
-<h2>NAME</h2>\r
-<div class="sectionbody">\r
-<p>nvme-lnvm-list -\r
-   List all recognized LightNVM NVMe devices\r
-</p>\r
-</div>\r
-</div>\r
-<div id="content">\r
-<div class="sect1">\r
-<h2 id="_synopsis">SYNOPSIS</h2>\r
-<div class="sectionbody">\r
-<div class="verseblock">\r
-<pre class="content"><em>nvme lnvm-list</em></pre>\r
-<div class="attribution">\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_description">DESCRIPTION</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>List all registered LightNVM devices.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_options">OPTIONS</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>No options yet.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_examples">EXAMPLES</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>No examples yet.</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_nvme">NVME</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Part of the nvme-user suite</p></div>\r
-</div>\r
-</div>\r
-</div>\r
-<div id="footnotes"><hr /></div>\r
-<div id="footer">\r
-<div id="footer-text">\r
-Last updated 2017-02-27 10:11:58 EST\r
-</div>\r
-</div>\r
-</body>\r
-</html>\r
diff --git a/Documentation/nvme-lnvm-list.txt b/Documentation/nvme-lnvm-list.txt
deleted file mode 100644 (file)
index 959f6b9..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-nvme-lnvm-list(1)
-=================
-
-NAME
-----
-nvme-lnvm-list - List all recognized LightNVM NVMe devices
-
-SYNOPSIS
---------
-[verse]
-'nvme lnvm-list' 
-
-DESCRIPTION
------------
-List all registered LightNVM devices.
-
-OPTIONS
--------
-No options yet.
-
-EXAMPLES
---------
-No examples yet.
-
-NVME
-----
-Part of the nvme-user suite
diff --git a/Documentation/nvme-lnvm-remove.1 b/Documentation/nvme-lnvm-remove.1
deleted file mode 100644 (file)
index d6a8aa2..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-'\" t
-.\"     Title: nvme-lnvm-remove
-.\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
-.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\"      Date: 10/20/2020
-.\"    Manual: NVMe Manual
-.\"    Source: NVMe
-.\"  Language: English
-.\"
-.TH "NVME\-LNVM\-REMOVE" "1" "10/20/2020" "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-lnvm-remove \- Remove an initialized LightNVM target\&.
-.SH "SYNOPSIS"
-.sp
-.nf
-\fInvme lnvm\-remove\fR [\-\-target\-name=<TARGET> | \-n <TARGET>]
-.fi
-.SH "DESCRIPTION"
-.sp
-Remove an initialized target\&.
-.sp
-The target name is the name of which the media is exposed as in /dev/<TARGET>
-.SH "OPTIONS"
-.PP
-\-\-target\-name=<TARGET>, \-n <TARGET>
-.RS 4
-Target name of the device to initialize\&. For example: target0\&.
-.RE
-.SH "EXAMPLES"
-.sp
-None yet
-.SH "NVME"
-.sp
-Part of the nvme\-user suite
diff --git a/Documentation/nvme-lnvm-remove.html b/Documentation/nvme-lnvm-remove.html
deleted file mode 100644 (file)
index ac2e69a..0000000
+++ /dev/null
@@ -1,800 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
-    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
-<head>\r
-<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc 8.6.8" />\r
-<title>nvme-lnvm-remove(1)</title>\r
-<style type="text/css">\r
-/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
-\r
-/* Default font. */\r
-body {\r
-  font-family: Georgia,serif;\r
-}\r
-\r
-/* Title font. */\r
-h1, h2, h3, h4, h5, h6,\r
-div.title, caption.title,\r
-thead, p.table.header,\r
-#toctitle,\r
-#author, #revnumber, #revdate, #revremark,\r
-#footer {\r
-  font-family: Arial,Helvetica,sans-serif;\r
-}\r
-\r
-body {\r
-  margin: 1em 5% 1em 5%;\r
-}\r
-\r
-a {\r
-  color: blue;\r
-  text-decoration: underline;\r
-}\r
-a:visited {\r
-  color: fuchsia;\r
-}\r
-\r
-em {\r
-  font-style: italic;\r
-  color: navy;\r
-}\r
-\r
-strong {\r
-  font-weight: bold;\r
-  color: #083194;\r
-}\r
-\r
-h1, h2, h3, h4, h5, h6 {\r
-  color: #527bbd;\r
-  margin-top: 1.2em;\r
-  margin-bottom: 0.5em;\r
-  line-height: 1.3;\r
-}\r
-\r
-h1, h2, h3 {\r
-  border-bottom: 2px solid silver;\r
-}\r
-h2 {\r
-  padding-top: 0.5em;\r
-}\r
-h3 {\r
-  float: left;\r
-}\r
-h3 + * {\r
-  clear: left;\r
-}\r
-h5 {\r
-  font-size: 1.0em;\r
-}\r
-\r
-div.sectionbody {\r
-  margin-left: 0;\r
-}\r
-\r
-hr {\r
-  border: 1px solid silver;\r
-}\r
-\r
-p {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0.5em;\r
-}\r
-\r
-ul, ol, li > p {\r
-  margin-top: 0;\r
-}\r
-ul > li     { color: #aaa; }\r
-ul > li > * { color: black; }\r
-\r
-.monospaced, code, pre {\r
-  font-family: "Courier New", Courier, monospace;\r
-  font-size: inherit;\r
-  color: navy;\r
-  padding: 0;\r
-  margin: 0;\r
-}\r
-\r
-\r
-#author {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  font-size: 1.1em;\r
-}\r
-#email {\r
-}\r
-#revnumber, #revdate, #revremark {\r
-}\r
-\r
-#footer {\r
-  font-size: small;\r
-  border-top: 2px solid silver;\r
-  padding-top: 0.5em;\r
-  margin-top: 4.0em;\r
-}\r
-#footer-text {\r
-  float: left;\r
-  padding-bottom: 0.5em;\r
-}\r
-#footer-badges {\r
-  float: right;\r
-  padding-bottom: 0.5em;\r
-}\r
-\r
-#preamble {\r
-  margin-top: 1.5em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.imageblock, div.exampleblock, div.verseblock,\r
-div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,\r
-div.admonitionblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.admonitionblock {\r
-  margin-top: 2.0em;\r
-  margin-bottom: 2.0em;\r
-  margin-right: 10%;\r
-  color: #606060;\r
-}\r
-\r
-div.content { /* Block element content. */\r
-  padding: 0;\r
-}\r
-\r
-/* Block element titles. */\r
-div.title, caption.title {\r
-  color: #527bbd;\r
-  font-weight: bold;\r
-  text-align: left;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.5em;\r
-}\r
-div.title + * {\r
-  margin-top: 0;\r
-}\r
-\r
-td div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content div.title:first-child {\r
-  margin-top: 0.0em;\r
-}\r
-div.content + div.title {\r
-  margin-top: 0.0em;\r
-}\r
-\r
-div.sidebarblock > div.content {\r
-  background: #ffffee;\r
-  border: 1px solid #dddddd;\r
-  border-left: 4px solid #f0f0f0;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.listingblock > div.content {\r
-  border: 1px solid #dddddd;\r
-  border-left: 5px solid #f0f0f0;\r
-  background: #f8f8f8;\r
-  padding: 0.5em;\r
-}\r
-\r
-div.quoteblock, div.verseblock {\r
-  padding-left: 1.0em;\r
-  margin-left: 1.0em;\r
-  margin-right: 10%;\r
-  border-left: 5px solid #f0f0f0;\r
-  color: #888;\r
-}\r
-\r
-div.quoteblock > div.attribution {\r
-  padding-top: 0.5em;\r
-  text-align: right;\r
-}\r
-\r
-div.verseblock > pre.content {\r
-  font-family: inherit;\r
-  font-size: inherit;\r
-}\r
-div.verseblock > div.attribution {\r
-  padding-top: 0.75em;\r
-  text-align: left;\r
-}\r
-/* DEPRECATED: Pre version 8.2.7 verse style literal block. */\r
-div.verseblock + div.attribution {\r
-  text-align: left;\r
-}\r
-\r
-div.admonitionblock .icon {\r
-  vertical-align: top;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  text-decoration: underline;\r
-  color: #527bbd;\r
-  padding-right: 0.5em;\r
-}\r
-div.admonitionblock td.content {\r
-  padding-left: 0.5em;\r
-  border-left: 3px solid #dddddd;\r
-}\r
-\r
-div.exampleblock > div.content {\r
-  border-left: 3px solid #dddddd;\r
-  padding-left: 0.5em;\r
-}\r
-\r
-div.imageblock div.content { padding-left: 0; }\r
-span.image img { border-style: none; }\r
-a.image:visited { color: white; }\r
-\r
-dl {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-dt {\r
-  margin-top: 0.5em;\r
-  margin-bottom: 0;\r
-  font-style: normal;\r
-  color: navy;\r
-}\r
-dd > *:first-child {\r
-  margin-top: 0.1em;\r
-}\r
-\r
-ul, ol {\r
-    list-style-position: outside;\r
-}\r
-ol.arabic {\r
-  list-style-type: decimal;\r
-}\r
-ol.loweralpha {\r
-  list-style-type: lower-alpha;\r
-}\r
-ol.upperalpha {\r
-  list-style-type: upper-alpha;\r
-}\r
-ol.lowerroman {\r
-  list-style-type: lower-roman;\r
-}\r
-ol.upperroman {\r
-  list-style-type: upper-roman;\r
-}\r
-\r
-div.compact ul, div.compact ol,\r
-div.compact p, div.compact p,\r
-div.compact div, div.compact div {\r
-  margin-top: 0.1em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-tfoot {\r
-  font-weight: bold;\r
-}\r
-td > div.verse {\r
-  white-space: pre;\r
-}\r
-\r
-div.hdlist {\r
-  margin-top: 0.8em;\r
-  margin-bottom: 0.8em;\r
-}\r
-div.hdlist tr {\r
-  padding-bottom: 15px;\r
-}\r
-dt.hdlist1.strong, td.hdlist1.strong {\r
-  font-weight: bold;\r
-}\r
-td.hdlist1 {\r
-  vertical-align: top;\r
-  font-style: normal;\r
-  padding-right: 0.8em;\r
-  color: navy;\r
-}\r
-td.hdlist2 {\r
-  vertical-align: top;\r
-}\r
-div.hdlist.compact tr {\r
-  margin: 0;\r
-  padding-bottom: 0;\r
-}\r
-\r
-.comment {\r
-  background: yellow;\r
-}\r
-\r
-.footnote, .footnoteref {\r
-  font-size: 0.8em;\r
-}\r
-\r
-span.footnote, span.footnoteref {\r
-  vertical-align: super;\r
-}\r
-\r
-#footnotes {\r
-  margin: 20px 0 20px 0;\r
-  padding: 7px 0 0 0;\r
-}\r
-\r
-#footnotes div.footnote {\r
-  margin: 0 0 5px 0;\r
-}\r
-\r
-#footnotes hr {\r
-  border: none;\r
-  border-top: 1px solid silver;\r
-  height: 1px;\r
-  text-align: left;\r
-  margin-left: 0;\r
-  width: 20%;\r
-  min-width: 100px;\r
-}\r
-\r
-div.colist td {\r
-  padding-right: 0.5em;\r
-  padding-bottom: 0.3em;\r
-  vertical-align: top;\r
-}\r
-div.colist td img {\r
-  margin-top: 0.3em;\r
-}\r
-\r
-@media print {\r
-  #footer-badges { display: none; }\r
-}\r
-\r
-#toc {\r
-  margin-bottom: 2.5em;\r
-}\r
-\r
-#toctitle {\r
-  color: #527bbd;\r
-  font-size: 1.1em;\r
-  font-weight: bold;\r
-  margin-top: 1.0em;\r
-  margin-bottom: 0.1em;\r
-}\r
-\r
-div.toclevel0, div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 {\r
-  margin-top: 0;\r
-  margin-bottom: 0;\r
-}\r
-div.toclevel2 {\r
-  margin-left: 2em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel3 {\r
-  margin-left: 4em;\r
-  font-size: 0.9em;\r
-}\r
-div.toclevel4 {\r
-  margin-left: 6em;\r
-  font-size: 0.9em;\r
-}\r
-\r
-span.aqua { color: aqua; }\r
-span.black { color: black; }\r
-span.blue { color: blue; }\r
-span.fuchsia { color: fuchsia; }\r
-span.gray { color: gray; }\r
-span.green { color: green; }\r
-span.lime { color: lime; }\r
-span.maroon { color: maroon; }\r
-span.navy { color: navy; }\r
-span.olive { color: olive; }\r
-span.purple { color: purple; }\r
-span.red { color: red; }\r
-span.silver { color: silver; }\r
-span.teal { color: teal; }\r
-span.white { color: white; }\r
-span.yellow { color: yellow; }\r
-\r
-span.aqua-background { background: aqua; }\r
-span.black-background { background: black; }\r
-span.blue-background { background: blue; }\r
-span.fuchsia-background { background: fuchsia; }\r
-span.gray-background { background: gray; }\r
-span.green-background { background: green; }\r
-span.lime-background { background: lime; }\r
-span.maroon-background { background: maroon; }\r
-span.navy-background { background: navy; }\r
-span.olive-background { background: olive; }\r
-span.purple-background { background: purple; }\r
-span.red-background { background: red; }\r
-span.silver-background { background: silver; }\r
-span.teal-background { background: teal; }\r
-span.white-background { background: white; }\r
-span.yellow-background { background: yellow; }\r
-\r
-span.big { font-size: 2em; }\r
-span.small { font-size: 0.6em; }\r
-\r
-span.underline { text-decoration: underline; }\r
-span.overline { text-decoration: overline; }\r
-span.line-through { text-decoration: line-through; }\r
-\r
-div.unbreakable { page-break-inside: avoid; }\r
-\r
-\r
-/*\r
- * xhtml11 specific\r
- *\r
- * */\r
-\r
-div.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-div.tableblock > table {\r
-  border: 3px solid #527bbd;\r
-}\r
-thead, p.table.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.table {\r
-  margin-top: 0;\r
-}\r
-/* Because the table frame attribute is overridden by CSS in most browsers. */\r
-div.tableblock > table[frame="void"] {\r
-  border-style: none;\r
-}\r
-div.tableblock > table[frame="hsides"] {\r
-  border-left-style: none;\r
-  border-right-style: none;\r
-}\r
-div.tableblock > table[frame="vsides"] {\r
-  border-top-style: none;\r
-  border-bottom-style: none;\r
-}\r
-\r
-\r
-/*\r
- * html5 specific\r
- *\r
- * */\r
-\r
-table.tableblock {\r
-  margin-top: 1.0em;\r
-  margin-bottom: 1.5em;\r
-}\r
-thead, p.tableblock.header {\r
-  font-weight: bold;\r
-  color: #527bbd;\r
-}\r
-p.tableblock {\r
-  margin-top: 0;\r
-}\r
-table.tableblock {\r
-  border-width: 3px;\r
-  border-spacing: 0px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-  border-collapse: collapse;\r
-}\r
-th.tableblock, td.tableblock {\r
-  border-width: 1px;\r
-  padding: 4px;\r
-  border-style: solid;\r
-  border-color: #527bbd;\r
-}\r
-\r
-table.tableblock.frame-topbot {\r
-  border-left-style: hidden;\r
-  border-right-style: hidden;\r
-}\r
-table.tableblock.frame-sides {\r
-  border-top-style: hidden;\r
-  border-bottom-style: hidden;\r
-}\r
-table.tableblock.frame-none {\r
-  border-style: hidden;\r
-}\r
-\r
-th.tableblock.halign-left, td.tableblock.halign-left {\r
-  text-align: left;\r
-}\r
-th.tableblock.halign-center, td.tableblock.halign-center {\r
-  text-align: center;\r
-}\r
-th.tableblock.halign-right, td.tableblock.halign-right {\r
-  text-align: right;\r
-}\r
-\r
-th.tableblock.valign-top, td.tableblock.valign-top {\r
-  vertical-align: top;\r
-}\r
-th.tableblock.valign-middle, td.tableblock.valign-middle {\r
-  vertical-align: middle;\r
-}\r
-th.tableblock.valign-bottom, td.tableblock.valign-bottom {\r
-  vertical-align: bottom;\r
-}\r
-\r
-\r
-/*\r
- * manpage specific\r
- *\r
- * */\r
-\r
-body.manpage h1 {\r
-  padding-top: 0.5em;\r
-  padding-bottom: 0.5em;\r
-  border-top: 2px solid silver;\r
-  border-bottom: 2px solid silver;\r
-}\r
-body.manpage h2 {\r
-  border-style: none;\r
-}\r
-body.manpage div.sectionbody {\r
-  margin-left: 3em;\r
-}\r
-\r
-@media print {\r
-  body.manpage div#toc { display: none; }\r
-}\r
-\r
-\r
-</style>\r
-<script type="text/javascript">\r
-/*<![CDATA[*/\r
-var asciidoc = {  // Namespace.\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Table Of Contents generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Author: Mihai Bazon, September 2002\r
- * http://students.infoiasi.ro/~mishoo\r
- *\r
- * Table Of Content generator\r
- * Version: 0.4\r
- *\r
- * Feel free to use this script under the terms of the GNU General Public\r
- * License, as long as you do not remove or alter this notice.\r
- */\r
-\r
- /* modified by Troy D. Hanson, September 2006. License: GPL */\r
- /* modified by Stuart Rackham, 2006, 2009. License: GPL */\r
-\r
-// toclevels = 1..4.\r
-toc: function (toclevels) {\r
-\r
-  function getText(el) {\r
-    var text = "";\r
-    for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.\r
-        text += i.data;\r
-      else if (i.firstChild != null)\r
-        text += getText(i);\r
-    }\r
-    return text;\r
-  }\r
-\r
-  function TocEntry(el, text, toclevel) {\r
-    this.element = el;\r
-    this.text = text;\r
-    this.toclevel = toclevel;\r
-  }\r
-\r
-  function tocEntries(el, toclevels) {\r
-    var result = new Array;\r
-    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');\r
-    // Function that scans the DOM tree for header elements (the DOM2\r
-    // nodeIterator API would be a better technique but not supported by all\r
-    // browsers).\r
-    var iterate = function (el) {\r
-      for (var i = el.firstChild; i != null; i = i.nextSibling) {\r
-        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {\r
-          var mo = re.exec(i.tagName);\r
-          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {\r
-            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);\r
-          }\r
-          iterate(i);\r
-        }\r
-      }\r
-    }\r
-    iterate(el);\r
-    return result;\r
-  }\r
-\r
-  var toc = document.getElementById("toc");\r
-  if (!toc) {\r
-    return;\r
-  }\r
-\r
-  // Delete existing TOC entries in case we're reloading the TOC.\r
-  var tocEntriesToRemove = [];\r
-  var i;\r
-  for (i = 0; i < toc.childNodes.length; i++) {\r
-    var entry = toc.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div'\r
-     && entry.getAttribute("class")\r
-     && entry.getAttribute("class").match(/^toclevel/))\r
-      tocEntriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < tocEntriesToRemove.length; i++) {\r
-    toc.removeChild(tocEntriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild TOC entries.\r
-  var entries = tocEntries(document.getElementById("content"), toclevels);\r
-  for (var i = 0; i < entries.length; ++i) {\r
-    var entry = entries[i];\r
-    if (entry.element.id == "")\r
-      entry.element.id = "_toc_" + i;\r
-    var a = document.createElement("a");\r
-    a.href = "#" + entry.element.id;\r
-    a.appendChild(document.createTextNode(entry.text));\r
-    var div = document.createElement("div");\r
-    div.appendChild(a);\r
-    div.className = "toclevel" + entry.toclevel;\r
-    toc.appendChild(div);\r
-  }\r
-  if (entries.length == 0)\r
-    toc.parentNode.removeChild(toc);\r
-},\r
-\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-// Footnotes generator\r
-/////////////////////////////////////////////////////////////////////\r
-\r
-/* Based on footnote generation code from:\r
- * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html\r
- */\r
-\r
-footnotes: function () {\r
-  // Delete existing footnote entries in case we're reloading the footnodes.\r
-  var i;\r
-  var noteholder = document.getElementById("footnotes");\r
-  if (!noteholder) {\r
-    return;\r
-  }\r
-  var entriesToRemove = [];\r
-  for (i = 0; i < noteholder.childNodes.length; i++) {\r
-    var entry = noteholder.childNodes[i];\r
-    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")\r
-      entriesToRemove.push(entry);\r
-  }\r
-  for (i = 0; i < entriesToRemove.length; i++) {\r
-    noteholder.removeChild(entriesToRemove[i]);\r
-  }\r
-\r
-  // Rebuild footnote entries.\r
-  var cont = document.getElementById("content");\r
-  var spans = cont.getElementsByTagName("span");\r
-  var refs = {};\r
-  var n = 0;\r
-  for (i=0; i<spans.length; i++) {\r
-    if (spans[i].className == "footnote") {\r
-      n++;\r
-      var note = spans[i].getAttribute("data-note");\r
-      if (!note) {\r
-        // Use [\s\S] in place of . so multi-line matches work.\r
-        // Because JavaScript has no s (dotall) regex flag.\r
-        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];\r
-        spans[i].innerHTML =\r
-          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-        spans[i].setAttribute("data-note", note);\r
-      }\r
-      noteholder.innerHTML +=\r
-        "<div class='footnote' id='_footnote_" + n + "'>" +\r
-        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +\r
-        n + "</a>. " + note + "</div>";\r
-      var id =spans[i].getAttribute("id");\r
-      if (id != null) refs["#"+id] = n;\r
-    }\r
-  }\r
-  if (n == 0)\r
-    noteholder.parentNode.removeChild(noteholder);\r
-  else {\r
-    // Process footnoterefs.\r
-    for (i=0; i<spans.length; i++) {\r
-      if (spans[i].className == "footnoteref") {\r
-        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");\r
-        href = href.match(/#.*/)[0];  // Because IE return full URL.\r
-        n = refs[href];\r
-        spans[i].innerHTML =\r
-          "[<a href='#_footnote_" + n +\r
-          "' title='View footnote' class='footnote'>" + n + "</a>]";\r
-      }\r
-    }\r
-  }\r
-},\r
-\r
-install: function(toclevels) {\r
-  var timerId;\r
-\r
-  function reinstall() {\r
-    asciidoc.footnotes();\r
-    if (toclevels) {\r
-      asciidoc.toc(toclevels);\r
-    }\r
-  }\r
-\r
-  function reinstallAndRemoveTimer() {\r
-    clearInterval(timerId);\r
-    reinstall();\r
-  }\r
-\r
-  timerId = setInterval(reinstall, 500);\r
-  if (document.addEventListener)\r
-    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);\r
-  else\r
-    window.onload = reinstallAndRemoveTimer;\r
-}\r
-\r
-}\r
-asciidoc.install();\r
-/*]]>*/\r
-</script>\r
-</head>\r
-<body class="manpage">\r
-<div id="header">\r
-<h1>\r
-nvme-lnvm-remove(1) Manual Page\r
-</h1>\r
-<h2>NAME</h2>\r
-<div class="sectionbody">\r
-<p>nvme-lnvm-remove -\r
-   Remove an initialized LightNVM target.\r
-</p>\r
-</div>\r
-</div>\r
-<div id="content">\r
-<div class="sect1">\r
-<h2 id="_synopsis">SYNOPSIS</h2>\r
-<div class="sectionbody">\r
-<div class="verseblock">\r
-<pre class="content"><em>nvme lnvm-remove</em> [--target-name=&lt;TARGET&gt; | -n &lt;TARGET&gt;]</pre>\r
-<div class="attribution">\r
-</div></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_description">DESCRIPTION</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Remove an initialized target.</p></div>\r
-<div class="paragraph"><p>The target name is the name of which the media is exposed as in\r
-/dev/&lt;TARGET&gt;</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_options">OPTIONS</h2>\r
-<div class="sectionbody">\r
-<div class="dlist"><dl>\r
-<dt class="hdlist1">\r
---target-name=&lt;TARGET&gt;\r
-</dt>\r
-<dt class="hdlist1">\r
--n &lt;TARGET&gt;\r
-</dt>\r
-<dd>\r
-<p>\r
-        Target name of the device to initialize. For example: target0.\r
-</p>\r
-</dd>\r
-</dl></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_examples">EXAMPLES</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>None yet</p></div>\r
-</div>\r
-</div>\r
-<div class="sect1">\r
-<h2 id="_nvme">NVME</h2>\r
-<div class="sectionbody">\r
-<div class="paragraph"><p>Part of the nvme-user suite</p></div>\r
-</div>\r
-</div>\r
-</div>\r
-<div id="footnotes"><hr /></div>\r
-<div id="footer">\r
-<div id="footer-text">\r
-Last updated 2017-02-27 10:11:58 EST\r
-</div>\r
-</div>\r
-</body>\r
-</html>\r
diff --git a/Documentation/nvme-lnvm-remove.txt b/Documentation/nvme-lnvm-remove.txt
deleted file mode 100644 (file)
index f5cdd6e..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-nvme-lnvm-remove(1)
-===================
-
-NAME
-----
-nvme-lnvm-remove - Remove an initialized LightNVM target.
-
-SYNOPSIS
---------
-[verse]
-'nvme lnvm-remove' [--target-name=<TARGET> | -n <TARGET>]
-
-DESCRIPTION
------------
-Remove an initialized target.
-
-The target name is the name of which the media is exposed as in
-/dev/<TARGET>
-
-OPTIONS
--------
---target-name=<TARGET>::
--n <TARGET>::
-       Target name of the device to initialize. For example: target0.
-
-EXAMPLES
---------
-None yet
-
-NVME
-----
-Part of the nvme-user suite
index f3812738f6278b113555cc635bb9997efd6d95ad..7c84932622148c5b1d471cbc22e7342287148a80 100644 (file)
@@ -13,8 +13,6 @@ readonly _plugin_subcmds=(
                set-bucket-thresholds lat-stats-tracking \
                market-name smart-log-add temp-stats"
        [amzn]="id-ctrl"
-       [lnvm]="list info id-ns chunk-log init create \
-               remove factory diag-bbtbl diag-set-bbtbl"
        [memblaze]="smart-log-add get-pm-status set-pm-status \
                select-download lat-stats lat-stats-print lat-log \
                lat-log-print clear-error-log"
@@ -61,7 +59,6 @@ typeset -A _plugin_funcs
 readonly _plugin_funcs=(
        [intel]="plugin_intel_opts"
        [amzn]="plugin_amzn_opts"
-       [lnvm]="plugin_lnvm_opts"
        [memblaze]="plugin_memblaze_opts"
        [wdc]="plugin_wdc_opts"
        [huawei]="plugin_huawei_opts"
@@ -602,68 +599,6 @@ plugin_amzn_opts () {
        return 0
 }
 
-plugin_lnvm_opts () {
-    local opts=""
-       local compargs=""
-
-       local nonopt_args=0
-       for (( i=0; i < ${#words[@]}-1; i++ )); do
-               if [[ ${words[i]} != -* ]]; then
-                       let nonopt_args+=1
-               fi
-       done
-
-       if [ $nonopt_args -eq 3 ]; then
-               opts="/dev/nvme* "
-       fi
-
-       opts+=" "
-
-       case "$1" in
-               "list")
-               opts+=$NO_OPTS
-                       ;;
-               "info")
-               opts+=$NO_OPTS
-                       ;;
-               "id-ns")
-               opts+=" --namespace-id= -n --raw-binary -b --human-readable -H"
-                       ;;
-               "chunk-log")
-               opts+=" --output-format= -o --human-readable -H"
-                       ;;
-               "init")
-               opts+=" --device-name= -d --mediamgr-name -m"
-                       ;;
-               "create")
-               opts+=" --device-name= -d --target-name= -n --target-type= -t \
-                       --lun-begin= -b --lun-end= -e --over-prov= -o --factory -f"
-                       ;;
-               "remove")
-               opts+=" --target-name= -n"
-                       ;;
-               "factory")
-               opts+=" --device-name= -d --erase-only-marked -e
-                       --clear-host-side-blks -s --clear-bb-blks -b"
-                       ;;
-               "diag-bbtbl")
-               opts+=" --namespace-id= -n --channel-id= -c --lun-id= -l \
-                       --raw-binary -b"
-                       ;;
-               "diag-set-bbtbl")
-               opts+=" --namespace-id= -n --channel-id= -c --lun-id= -l \
-                       --plane-id= -p --block-id= -b --value= -v"
-                       ;;
-               "help")
-               opts+=$NO_OPTS
-                       ;;
-       esac
-
-       COMPREPLY+=( $( compgen $compargs -W "$opts" -- $cur ) )
-
-       return 0
-}
-
 plugin_memblaze_opts () {
     local opts=""
        local compargs=""