All of lore.kernel.org
 help / color / mirror / Atom feed
From: minwoo.im.dev@gmail.com (Minwoo Im)
Subject: [PATCH 1/2] nvme-cli: don't try to disconnect for ctrl with pcie transport
Date: Fri, 17 May 2019 02:23:49 +0900	[thread overview]
Message-ID: <20190516172350.11864-2-minwoo.im.dev@gmail.com> (raw)
In-Reply-To: <20190516172350.11864-1-minwoo.im.dev@gmail.com>

If a host system has both pcie and fabrics controllers, the following
nvme-cli disconnect-all command will might not be working because
contrlller with pcie transport does not have delete_controller in sysfs.

root at target:~# nvme list
Node             SN                   Model                                    Namespace Usage                      Format           FW Rev
---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------
/dev/nvme0n1     foo                  QEMU NVMe Ctrl                           1         536.87  MB / 536.87  MB    512   B +  0 B   1.0
/dev/nvme1n1     b92326b9b2323bf0     Linux                                    1         134.22  MB / 134.22  MB    512   B +  0 B   5.1.0-rc
/dev/nvme2n1     65fa04eddd9bbac0     Linux                                    1         134.22  MB / 134.22  MB    512   B +  0 B   5.1.0-rc

root at target:~/nvme-cli.git# nvme disconnect-all
Failed to open /sys/class/nvme/nvme0/delete_controller: No such file or directory

This patch checks the transport type of the controller in iteration.

Signed-off-by: Minwoo Im <minwoo.im.dev at gmail.com>
---
 fabrics.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/fabrics.c b/fabrics.c
index 511de06..733a24b 100644
--- a/fabrics.c
+++ b/fabrics.c
@@ -1196,6 +1196,8 @@ int disconnect_all(const char *desc, int argc, char **argv)
 
 		for (j = 0; j < subsys->nctrls; j++) {
 			struct ctrl_list_item *ctrl = &subsys->ctrls[j];
+			if (!strcmp(ctrl->transport, "pcie"))
+				continue;
 
 			ret = disconnect_by_device(ctrl->name);
 			if (ret)
-- 
2.21.0

  reply	other threads:[~2019-05-16 17:23 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20190516172415epcas4p4c4e3f6ce4d62a28cf4632f3fa766e861@epcms2p6>
2019-05-16 17:23 ` [PATCH 0/2] nvme-cli: fix disconnect-all for pcie tp Minwoo Im
2019-05-16 17:23   ` Minwoo Im [this message]
2019-05-16 23:08     ` [PATCH 1/2] nvme-cli: don't try to disconnect for ctrl with pcie transport Chaitanya Kulkarni
2019-05-27  5:05       ` Minwoo Im
2019-05-16 17:23   ` [PATCH 2/2] nvme-cli: remove unnecessary initialize of local var Minwoo Im
2019-05-16 23:02     ` Chaitanya Kulkarni
2019-05-23  4:22   ` [PATCH 0/2] nvme-cli: fix disconnect-all for pcie tp Minwoo Im
2019-05-24  8:22     ` Sagi Grimberg
2019-05-24 14:45   ` Keith Busch

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190516172350.11864-2-minwoo.im.dev@gmail.com \
    --to=minwoo.im.dev@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.