From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-17.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B152BC433E0 for ; Tue, 26 Jan 2021 20:39:08 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D6EB8221FC for ; Tue, 26 Jan 2021 20:39:07 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D6EB8221FC Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-nvme-bounces+linux-nvme=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-Id:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=wuebu4rpYrxkH7ym5uRb/Gd52JoV2GNfp6eDY+ql640=; b=lF4HktoOPYzbrB6oltv78BiCt DF7nq0t7DVRV/L8eS6IPG/LVI4Ps01tDtiOlY/pL4KqwGG/PWeCND8UJOf2HajAzaCQho+ojkueF3 DEG3VoHT7pBtvGv9mvZS6lk6bMhy6rKBZbajP5sOcTGy+YP7EEPUOJq1M4X2u30g2MmYSUcK0O+w2 PqkJB48CI+IXv9cpLHi1XbacluPjV0Iu7CwBfHNHtiyTRcEd+oF96CY0KNIe8CT3O9rPdDkJBqNLz SIAGNir5G7HXqQgG+wT4zd/L0cKn5wvXjrB3TRYw/31IewUeCsOYShEja0vDe5h00+ie2mT4iO043 MtYsQF/oQ==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1l4V6g-00033K-Dv; Tue, 26 Jan 2021 20:38:34 +0000 Received: from mx2.suse.de ([195.135.220.15]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1l4V2D-00013D-J2 for linux-nvme@lists.infradead.org; Tue, 26 Jan 2021 20:34:15 +0000 X-Virus-Scanned: by amavisd-new at test-mx.suse.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1611693232; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=OCi4XgW8tqeA8gaHiHGrQLQEXJfq0xjDGP8+dYMvSjQ=; b=ryTV9an1Bvc1PsbzYU5qvsEV3jGTihkoaeQppOE0K/tRTLXNmmu8DMuSKj5X91cJ+Tvp7N OT2G9qXMHrnYN3mcxv9Q0rGhkAf6iXus67cMRErWBhYh2zpAdjfZKjM1kGdLkb9kO16jPY 1XuS8JFAvmJPrbQYVBBgTMmwX2zmhUU= Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 45FACB168; Tue, 26 Jan 2021 20:33:52 +0000 (UTC) From: mwilck@suse.com To: Keith Busch , linux-nvme@lists.infradead.org Subject: [PATCH 34/35] nvme-monitor(1): add man page for nvme-monitor Date: Tue, 26 Jan 2021 21:33:23 +0100 Message-Id: <20210126203324.23610-35-mwilck@suse.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210126203324.23610-1-mwilck@suse.com> References: <20210126203324.23610-1-mwilck@suse.com> MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210126_153358_022489_9D1B7441 X-CRM114-Status: GOOD ( 20.82 ) X-BeenThere: linux-nvme@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Hannes Reinecke , Chaitanya Kulkarni , Martin Wilck Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Linux-nvme" Errors-To: linux-nvme-bounces+linux-nvme=archiver.kernel.org@lists.infradead.org From: Martin Wilck Signed-off-by: Martin Wilck --- Documentation/cmds-main.txt | 4 + Documentation/nvme-monitor.1 | 204 ++++++ Documentation/nvme-monitor.html | 1049 +++++++++++++++++++++++++++++++ Documentation/nvme-monitor.txt | 169 +++++ 4 files changed, 1426 insertions(+) create mode 100644 Documentation/nvme-monitor.1 create mode 100644 Documentation/nvme-monitor.html create mode 100644 Documentation/nvme-monitor.txt diff --git a/Documentation/cmds-main.txt b/Documentation/cmds-main.txt index 46df03d..d058a54 100644 --- a/Documentation/cmds-main.txt +++ b/Documentation/cmds-main.txt @@ -168,3 +168,7 @@ linknvme:nvme-disconnect-all[1]:: linknvme:nvme-get-property[1]:: Reads and shows NVMe-over-Fabrics controller property + +linknvme:nvme-monitor[1]:: + Monitor Discovery events and Discover and Connect automatically + diff --git a/Documentation/nvme-monitor.1 b/Documentation/nvme-monitor.1 new file mode 100644 index 0000000..1578e4c --- /dev/null +++ b/Documentation/nvme-monitor.1 @@ -0,0 +1,204 @@ +'\" t +.\" Title: nvme-monitor +.\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] +.\" Generator: DocBook XSL Stylesheets vsnapshot +.\" Date: 01/20/2021 +.\" Manual: NVMe Manual +.\" Source: NVMe +.\" Language: English +.\" +.TH "NVME\-MONITOR" "1" "01/20/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-monitor \- Monitor Discovery events and Discover and Connect automatically +.SH "SYNOPSIS" +.sp +.nf +\fInvme discover\fR + [\-\-autoconnect | \-A + [\-\-startup | \-U + [\-\-persistent | \-p + [\-\-hostnqn= | \-q ] + [\-\-hostid= | \-I ] + [\-\-keep\-alive\-tmo=<#> | \-k <#>] + [\-\-reconnect\-delay=<#> | \-c <#>] + [\-\-ctrl\-loss\-tmo=<#> | \-l <#>] + [\-\-hdr\-digest | \-g] + [\-\-data\-digest | \-G] + [\-\-nr\-io\-queues=<#> | \-i <#>] + [\-\-nr\-write\-queues=<#> | \-W <#>] + [\-\-nr\-poll\-queues=<#> | \-P <#>] + [\-\-queue\-size=<#> | \-Q <#>] + [\-\-matching | \-m] + [\-\-persistent | \-p] + [\-\-silent | \-S] + [\-\-verbose | \-v] + [\-\-debug | \-D] + [\-\-clockstamps | \-C] +.fi +.SH "DESCRIPTION" +.sp +Listen to Discovery events (Asynchronous Event Notifications, AENs) on NVMe\-over\-Fabrics (NVMeoF) Discovery Controllers and for other events related to NVMeoF Discovery, and optionally connect to newly discovered controllers\&. +.sp +If no parameters are given, then \fInvme monitor\fR listens to Discovery\-related udev events (uevents)\&. If an event is received, it connects to the Discovery Controller and performs the equivalent of an \fInvme discover\fR on the associated transport address\&. If the \fI\-\-autoconnect\fR option is given, it performs the equivalent of an \fInvme connect\-all\fR instead\&. When run through a systemd service in \fI\-\-autoconnect\fR mode, the monitor can be used as an alternative to the udev\-rule based auto\-activation of NVMeoF connections\&. +.sp +Currently, the following event types are supported: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +"Discovery Log Page Change" Asynchronous Event Notifications (AENs) delivered via persistent connections to NVMeoF discovery controllers connected to the discovery service (nqn\&.2014\-08\&.org\&.nvmexpress\&.discovery)\&. Note that without the +\fI\-\-persistent\fR +option, +\fInvme monitor\fR +will not create persistent Discovery controllers itself, but it will receive and act upon AENs sent from persistent Discovery Controllers which were created manually or by other programs\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +FC\-NVMe auto\-connect uevents sent when the FibreChannel transport discovers N_Ports offering NVMe services\&. +.RE +.sp +See the documentation for the nvme\-connect\-all(1) and nvme\-discover(1) commands for further background\&. +.SH "OPTIONS" +.PP +\-A, \-\-autoconnect +.RS 4 +If this option is given, +\fInvme monitor\fR +will attempt to connect to newly discovered controllers\&. In order to avoid race conditions with +\fInvme connect\-all\fR +commands spawned by udev rules via systemd\(cqs +nvmf\-connect@\&.service, an empty rule is created under +/run/udev/rules\&.d/70\-nvmf\-autoconnect\&.rules, disabling the udev rules that start this service\&. The file will be deleted when +\fInvme monitor\fR +terminates\&. +.RE +.PP +\-U, \-\-startup +.RS 4 +Look for existing NVMe connections (i\&.e\&. transport addresses with at least one connected controller) during startup, start a discovery controller on every detected connection, retrieve the log page and (if +\fI\-\-autoconnect\fR +is also given) connect to all discovered controllers\&. Use the +\fI\-\-persistent\fR +option to make the Discovery Controllers persist after retrieving the Discovery Log page\&. +.RE +.PP +\-p, \-\-persistent +.RS 4 +This option has the same meaning as for +\fInvme discover\fR; Discovery Controllers will remain after the Discovery Log Page has been retrieved\&. This is necessary for receiving AENs from the transport connection that the Discovery controller is associated with\&. Without this option, AENs can only be received and acted upon if the administrator manually creates persistent Discovery controller connections\&. When +\fInvme monitor\fR +terminates, it will attempt to take down all Discovery Controllers it has created (i\&.e\&. ones that didn\(cqt already exist when +\fInvme monitor\fR +was started\&. +.RE +.PP +\-q , \-\-hostnqn=, \-I , \-\-hostid=, \-k <#>, \-\-keep\-alive\-tmo=<#>, \-c <#>, \-\-reconnect\-delay=<#>, \-l <#>, \-\-ctrl\-loss\-tmo=<#>, \-g, \-\-hdr\-digest, \-G, \-\-data\-digest, \-i <#>, \-\-nr\-io\-queues=<#>, \-W <#>, \-\-nr\-write\-queues=<#>, \-P <#>, \-\-nr\-poll\-queues=<#>, \-Q <#>, \-\-queue\-size=<#>, \-m, \-\-matching +.RS 4 +These options have the same meaning as for +\fInvme connect\-all\fR\&. See the man page nvme\-connect\-all(1) for details\&. +.RE +.PP +\-p, \-\-persistent +.RS 4 +Don\(cqt remove the discovery controller after retrieving the discovery log page\&. +.RE +.PP +\-S, \-\-silent +.RS 4 +Only print warnings and severe error messages\&. Do not log discoveries and newly created controllers\&. +.RE +.PP +\-v, \-\-verbose +.RS 4 +Log informational messages\&. This option overrides +\fI\-\-silent\fR\&. +.RE +.PP +\-D, \-\-debug +.RS 4 +Log informational and debug messages\&. This option overrieds +\fI\-\-silent\fR +and +\fI\-\-verbose\fR\&. +.RE +.SH "EXAMPLES" +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Listen to FC\-NVME events and AENs, creating persistent Discovery Controllers on the way, and automatically connect to all discovered controllers: +.sp +.if n \{\ +.RS 4 +.\} +.nf +# nvme discover \-\-autoconnect \-\-persistent +.fi +.if n \{\ +.RE +.\} +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +Like the above, but print more log messages and try to set up Discovery Controllers on startup, and using a different host NQN: +.sp +.if n \{\ +.RS 4 +.\} +.nf +# nvme discover \-\-autoconnect \-\-persistent \-\-startup \-\-verbose \e +\-\-hostqn=host1\-rogue\-nqn +.fi +.if n \{\ +.RE +.\} +.RE +.SH "SEE ALSO" +.sp +nvme\-discover(1) nvme\-connect\-all(1) +.SH "NVME" +.sp +Part of the nvme\-user suite diff --git a/Documentation/nvme-monitor.html b/Documentation/nvme-monitor.html new file mode 100644 index 0000000..c2b9a64 --- /dev/null +++ b/Documentation/nvme-monitor.html @@ -0,0 +1,1049 @@ + + + + + + +nvme-monitor(1) + + + + + +
+
+

SYNOPSIS

+
+
+
nvme discover
+                [--autoconnect            | -A
+                [--startup                | -U
+                [--persistent             | -p
+                [--hostnqn=<hostnqn>      | -q <hostnqn>]
+                [--hostid=<hostid>        | -I <hostid>]
+                [--keep-alive-tmo=<#>     | -k <#>]
+                [--reconnect-delay=<#>    | -c <#>]
+                [--ctrl-loss-tmo=<#>      | -l <#>]
+                [--hdr-digest             | -g]
+                [--data-digest            | -G]
+                [--nr-io-queues=<#>       | -i <#>]
+                [--nr-write-queues=<#>    | -W <#>]
+                [--nr-poll-queues=<#>     | -P <#>]
+                [--queue-size=<#>         | -Q <#>]
+                [--matching               | -m]
+                [--persistent             | -p]
+                [--silent                 | -S]
+                [--verbose                | -v]
+                [--debug                  | -D]
+                [--clockstamps            | -C]
+
+
+
+
+
+

DESCRIPTION

+
+

Listen to Discovery events (Asynchronous Event Notifications, AENs) on +NVMe-over-Fabrics (NVMeoF) Discovery Controllers and for other events related +to NVMeoF Discovery, and optionally connect to newly discovered controllers.

+

If no parameters are given, then nvme monitor listens to Discovery-related +udev events (uevents). If an event is received, it connects to the Discovery +Controller and performs the equivalent of an nvme discover on the associated +transport address. If the --autoconnect option is given, it performs the +equivalent of an nvme connect-all instead. When run through a systemd +service in --autoconnect mode, the monitor can be used as an alternative to +the udev-rule based auto-activation of NVMeoF connections.

+

Currently, the following event types are supported:

+
    +
  • +

    +"Discovery Log Page Change" Asynchronous Event Notifications (AENs) + delivered via persistent connections to NVMeoF discovery controllers + connected to the discovery service (nqn.2014-08.org.nvmexpress.discovery). + Note that without the --persistent option, nvme monitor will not create + persistent Discovery controllers itself, but it will receive and act upon + AENs sent from persistent Discovery Controllers which were created manually + or by other programs. +

    +
  • +
  • +

    +FC-NVMe auto-connect uevents sent when the FibreChannel transport discovers + N_Ports offering NVMe services. +

    +
  • +
+

See the documentation for the nvme-connect-all(1) and nvme-discover(1) +commands for further background.

+
+
+
+

OPTIONS

+
+
+
+-A +
+
+--autoconnect +
+
+

+ If this option is given, nvme monitor will attempt to connect to + newly discovered controllers. + In order to avoid race conditions with nvme connect-all commands + spawned by udev rules via systemd’s nvmf-connect@.service, an empty + rule is created under /run/udev/rules.d/70-nvmf-autoconnect.rules, + disabling the udev rules that start this service. The file will be + deleted when nvme monitor terminates. +

+
+
+-U +
+
+--startup +
+
+

+ Look for existing NVMe connections (i.e. transport addresses with at + least one connected controller) during startup, start a discovery + controller on every detected connection, retrieve the log page and (if + --autoconnect is also given) connect to all discovered controllers. + Use the --persistent option to make the Discovery Controllers + persist after retrieving the Discovery Log page. +

+
+
+-p +
+
+--persistent +
+
+

+ This option has the same meaning as for nvme discover; Discovery + Controllers will remain after the Discovery Log Page has been + retrieved. This is necessary for receiving AENs from the transport + connection that the Discovery controller is associated with. Without + this option, AENs can only be received and acted upon if the + administrator manually creates persistent Discovery controller + connections. + When nvme monitor terminates, it will attempt to take down all + Discovery Controllers it has created (i.e. ones that didn’t already + exist when nvme monitor was started. +

+
+
+-q <hostnqn> +
+
+--hostnqn=<hostnqn> +
+
+-I <hostid> +
+
+--hostid=<hostid> +
+
+-k <#> +
+
+--keep-alive-tmo=<#> +
+
+-c <#> +
+
+--reconnect-delay=<#> +
+
+-l <#> +
+
+--ctrl-loss-tmo=<#> +
+
+-g +
+
+--hdr-digest +
+
+-G +
+
+--data-digest +
+
+-i <#> +
+
+--nr-io-queues=<#> +
+
+-W <#> +
+
+--nr-write-queues=<#> +
+
+-P <#> +
+
+--nr-poll-queues=<#> +
+
+-Q <#> +
+
+--queue-size=<#> +
+
+-m +
+
+--matching +
+
+

+ These options have the same meaning as for nvme connect-all. See the + man page nvme-connect-all(1) for details. +

+
+
+-p +
+
+--persistent +
+
+

+ Don’t remove the discovery controller after retrieving the discovery + log page. +

+
+
+-S +
+
+--silent +
+
+

+ Only print warnings and severe error messages. Do not log discoveries + and newly created controllers. +

+
+
+-v +
+
+--verbose +
+
+

+ Log informational messages. This option overrides --silent. +

+
+
+-D +
+
+--debug +
+
+

+ Log informational and debug messages. This option overrieds --silent + and --verbose. +

+
+
+
+
+
+

EXAMPLES

+
+
    +
  • +

    +Listen to FC-NVME events and AENs, creating persistent Discovery Controllers +on the way, and automatically connect to all discovered controllers: +

    +
    +
    +
    # nvme discover --autoconnect --persistent
    +
    +
  • +
  • +

    +Like the above, but print more log messages and try to set up Discovery +Controllers on startup, and using a different host NQN: +

    +
    +
    +
    # nvme discover --autoconnect --persistent --startup --verbose \
    +--hostqn=host1-rogue-nqn
    +
    +
  • +
+
+
+
+

SEE ALSO

+
+

nvme-discover(1) +nvme-connect-all(1)

+
+
+
+

NVME

+
+

Part of the nvme-user suite

+
+
+
+

+ + + diff --git a/Documentation/nvme-monitor.txt b/Documentation/nvme-monitor.txt new file mode 100644 index 0000000..9232fab --- /dev/null +++ b/Documentation/nvme-monitor.txt @@ -0,0 +1,169 @@ +nvme-monitor(1) +=============== + +NAME +---- +nvme-monitor - Monitor Discovery events and Discover and Connect automatically + +SYNOPSIS +-------- +[verse] +'nvme discover' + [--autoconnect | -A] + [--startup | -U] + [--persistent | -p] + [--hostnqn= | -q ] + [--hostid= | -I ] + [--keep-alive-tmo=<#> | -k <#>] + [--reconnect-delay=<#> | -c <#>] + [--ctrl-loss-tmo=<#> | -l <#>] + [--hdr-digest | -g] + [--data-digest | -G] + [--nr-io-queues=<#> | -i <#>] + [--nr-write-queues=<#> | -W <#>] + [--nr-poll-queues=<#> | -P <#>] + [--queue-size=<#> | -Q <#>] + [--matching | -m] + [--persistent | -p] + [--silent | -S] + [--verbose | -v] + [--debug | -D] + [--clockstamps | -C] + +DESCRIPTION +----------- +Listen to Discovery events (Asynchronous Event Notifications, AENs) on +NVMe-over-Fabrics (NVMeoF) Discovery Controllers and for other events related +to NVMeoF Discovery, and optionally connect to newly discovered controllers. + +If no parameters are given, then 'nvme monitor' listens to Discovery-related +udev events (uevents). If an event is received, it connects to the Discovery +Controller and performs the equivalent of an 'nvme discover' on the associated +transport address. If the '--autoconnect' option is given, it performs the +equivalent of an 'nvme connect-all' instead. When run through a systemd +service in '--autoconnect' mode, the monitor can be used as an alternative to +the udev-rule based auto-activation of NVMeoF connections. + +Currently, the following event types are supported: + +- "Discovery Log Page Change" Asynchronous Event Notifications (AENs) + delivered via persistent connections to NVMeoF discovery controllers + connected to the discovery service (`nqn.2014-08.org.nvmexpress.discovery`). + Note that without the '--persistent' option, 'nvme monitor' will not create + persistent Discovery controllers itself, but it will receive and act upon + AENs sent from persistent Discovery Controllers which were created manually + or by other programs. + +- FC-NVMe auto-connect uevents sent when the FibreChannel transport discovers + N_Ports offering NVMe services. + +See the documentation for the nvme-connect-all(1) and nvme-discover(1) +commands for further background. + +OPTIONS +------- + +-A:: +--autoconnect:: + If this option is given, 'nvme monitor' will attempt to connect to + newly discovered controllers. + In order to avoid race conditions with 'nvme connect-all' commands + spawned by udev rules via systemd's `nvmf-connect@.service`, an empty + rule is created under `/run/udev/rules.d/70-nvmf-autoconnect.rules`, + disabling the udev rules that start this service. The file will be + deleted when 'nvme monitor' terminates. + +-U:: +--startup:: + Look for existing NVMe connections (i.e. transport addresses with at + least one connected controller) during startup, start a discovery + controller on every detected connection, retrieve the log page and (if + '--autoconnect' is also given) connect to all discovered controllers. + Use the '--persistent' option to make the Discovery Controllers + persist after retrieving the Discovery Log page. + +-p:: +--persistent:: + This option has the same meaning as for 'nvme discover'; Discovery + Controllers will remain after the Discovery Log Page has been + retrieved. This is necessary for receiving AENs from the transport + connection that the Discovery controller is associated with. Without + this option, AENs can only be received and acted upon if the + administrator manually creates persistent Discovery controller + connections. + When 'nvme monitor' terminates, it will attempt to take down all + Discovery Controllers it has created (i.e. ones that didn't already + exist when 'nvme monitor' was started. + +-q :: +--hostnqn=:: +-I :: +--hostid=:: +-k <#>:: +--keep-alive-tmo=<#>:: +-c <#>:: +--reconnect-delay=<#>:: +-l <#>:: +--ctrl-loss-tmo=<#>:: +-g:: +--hdr-digest:: +-G:: +--data-digest:: +-i <#>:: +--nr-io-queues=<#>:: +-W <#>:: +--nr-write-queues=<#>:: +-P <#>:: +--nr-poll-queues=<#>:: +-Q <#>:: +--queue-size=<#>:: +-m:: +--matching:: + These options have the same meaning as for 'nvme connect-all'. See the + man page nvme-connect-all(1) for details. + +-p:: +--persistent:: + Don't remove the discovery controller after retrieving the discovery + log page. + +-S:: +--silent:: + Only print warnings and severe error messages. Do not log discoveries + and newly created controllers. + +-v:: +--verbose:: + Log informational messages. This option overrides '--silent'. + +-D:: +--debug:: + Log informational and debug messages. This option overrieds '--silent' + and '--verbose'. + + +EXAMPLES +-------- +* Listen to FC-NVME events and AENs, creating persistent Discovery Controllers +on the way, and automatically connect to all discovered controllers: ++ +------------ +# nvme discover --autoconnect --persistent +------------ ++ +* Like the above, but print more log messages and try to set up Discovery +Controllers on startup, and using a different host NQN: ++ +----------- +# nvme discover --autoconnect --persistent --startup --verbose \ +--hostqn=host1-rogue-nqn +------------ + +SEE ALSO +-------- +nvme-discover(1) +nvme-connect-all(1) + +NVME +---- +Part of the nvme-user suite -- 2.29.2 _______________________________________________ Linux-nvme mailing list Linux-nvme@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-nvme