linux-nvme.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH blktests v3 0/2] nvme_trtype=fc fixes
@ 2023-05-03  8:38 Daniel Wagner
  2023-05-03  8:38 ` [PATCH blktests v3 1/2] nvme/rc: Cleanup fc ports in reverse order Daniel Wagner
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Daniel Wagner @ 2023-05-03  8:38 UTC (permalink / raw)
  To: linux-nvme
  Cc: linux-kernel, linux-block, Chaitanya Kulkarni,
	Shin'ichiro Kawasaki, Sagi Grimberg, Hannes Reinecke,
	Daniel Wagner

I've dropped the unrelated rdma change from v2. With the kernel patches

  https://lore.kernel.org/linux-nvme/20230418130159.11075-1-dwagner@suse.de/

I get this here:

# nvme_img_size=16M nvme_num_iter=10 nvme_trtype=fc ./check nvme
nvme/002 (create many subsystems and test discovery)         [not run]
    nvme_trtype=fc is not supported in this test
nvme/003 (test if we're sending keep-alives to a discovery controller) [passed]
    runtime  10.252s  ...  10.259s
nvme/004 (test nvme and nvmet UUID NS descriptors)           [passed]
    runtime  1.662s  ...  1.810s
nvme/005 (reset local loopback target)                       [passed]
    runtime  1.905s  ...  1.925s
nvme/006 (create an NVMeOF target with a block device-backed ns) [passed]
    runtime  0.161s  ...  0.149s
nvme/007 (create an NVMeOF target with a file-backed ns)     [passed]
    runtime  0.132s  ...  0.098s
nvme/008 (create an NVMeOF host with a block device-backed ns) [passed]
    runtime  1.776s  ...  1.760s
nvme/009 (create an NVMeOF host with a file-backed ns)       [passed]
    runtime  1.665s  ...  1.738s
nvme/010 (run data verification fio job on NVMeOF block device-backed ns) [passed]
    runtime  2.693s  ...  2.744s
nvme/011 (run data verification fio job on NVMeOF file-backed ns) [passed]
    runtime  2.981s  ...  3.066s
nvme/012 (run mkfs and data verification fio job on NVMeOF block device-backed ns) [not run]
    nvme_img_size must be at least 350m
nvme/013 (run mkfs and data verification fio job on NVMeOF file-backed ns) [not run]
    nvme_img_size must be at least 350m
nvme/014 (flush a NVMeOF block device-backed ns)             [passed]
    runtime  1.976s  ...  1.963s
nvme/015 (unit test for NVMe flush for file backed ns)       [passed]
    runtime  1.945s  ...  1.787s
nvme/016 (create/delete many NVMeOF block device-backed ns and test discovery) [not run]
    nvme_trtype=fc is not supported in this test
nvme/017 (create/delete many file-ns and test discovery)     [not run]
    nvme_trtype=fc is not supported in this test
nvme/018 (unit test NVMe-oF out of range access on a file backend) [passed]
    runtime  1.773s  ...  1.779s
nvme/019 (test NVMe DSM Discard command on NVMeOF block-device ns) [passed]
    runtime  1.738s  ...  1.806s
nvme/020 (test NVMe DSM Discard command on NVMeOF file-backed ns) [passed]
    runtime  1.600s  ...  1.596s
nvme/021 (test NVMe list command on NVMeOF file-backed ns)   [passed]
    runtime  1.698s  ...  1.735s
nvme/022 (test NVMe reset command on NVMeOF file-backed ns)  [passed]
    runtime  1.831s  ...  1.853s
nvme/023 (test NVMe smart-log command on NVMeOF block-device ns) [passed]
    runtime  1.762s  ...  1.800s
nvme/024 (test NVMe smart-log command on NVMeOF file-backed ns) [passed]
    runtime  1.722s  ...  1.747s
nvme/025 (test NVMe effects-log command on NVMeOF file-backed ns) [passed]
    runtime  1.713s  ...  1.725s
nvme/026 (test NVMe ns-descs command on NVMeOF file-backed ns) [passed]
    runtime  1.672s  ...  1.731s
nvme/027 (test NVMe ns-rescan command on NVMeOF file-backed ns) [passed]
    runtime  1.719s  ...  1.764s
nvme/028 (test NVMe list-subsys command on NVMeOF file-backed ns) [passed]
    runtime  1.702s  ...  1.701s
nvme/029 (test userspace IO via nvme-cli read/write interface) [passed]
    runtime  2.053s  ...  2.180s
nvme/030 (ensure the discovery generation counter is updated appropriately) [passed]
    runtime  0.683s  ...  0.631s
nvme/031 (test deletion of NVMeOF controllers immediately after setup) [passed]
    runtime  3.438s  ...  3.770s
nvme/038 (test deletion of NVMeOF subsystem without enabling) [passed]
    runtime  0.053s  ...  0.057s
nvme/040 (test nvme fabrics controller reset/disconnect operation during I/O)
nvme/040 (test nvme fabrics controller reset/disconnect operation during I/O) [passed]
    runtime  7.737s  ...  7.819srk/blktests/results/tmpdir.nvme.040.5O2': Directory not empty
nvme/041 (Create authenticated connections)                 
    runtime  0.275s  ...
WARNING: Test did not clean up fc device: nvme1
nvme/041 (Create authenticated connections)                  [failed]
    runtime  0.275s  ...  0.384s
    --- tests/nvme/041.out      2023-04-18 17:43:18.167745976 +0200
    +++ /home/wagi/work/blktests/results/nodev/nvme/041.out.bad 2023-05-03 10:28:09.639741275 +0200
    @@ -1,6 +1,8 @@
     Running nvme/041
     Test unauthenticated connection (should fail)
    +failed to lookup subsystem for controller nvme1
     NQN:blktests-subsystem-1 disconnected 0 controller(s)
     Test authenticated connection
    -NQN:blktests-subsystem-1 disconnected 1 controller(s)
    +failed to lookup subsystem for controller nvme1
    ...
    (Run 'diff -u tests/nvme/041.out /home/wagi/work/blktests/results/nodev/nvme/041.out.bad' to see the entire diff)
nvme/042 (Test dhchap key types for authenticated connections) [passed]
    runtime  4.377s  ...  4.613s
nvme/043 (Test hash and DH group variations for authenticated connections) [passed]
    runtime  2.895s  ...  2.736s
nvme/044 (Test bi-directional authentication)               
    runtime  1.125s  ...
WARNING: Test did not clean up fc device: nvme1
nvme/044 (Test bi-directional authentication)                [failed]
    runtime  1.125s  ...  1.133s
    --- tests/nvme/044.out      2023-04-18 17:43:18.167745976 +0200
    +++ /home/wagi/work/blktests/results/nodev/nvme/044.out.bad 2023-05-03 10:28:20.343798581 +0200
    @@ -2,9 +2,12 @@
     Test host authentication
     NQN:blktests-subsystem-1 disconnected 1 controller(s)
     Test invalid ctrl authentication (should fail)
    +failed to lookup subsystem for controller nvme1
     NQN:blktests-subsystem-1 disconnected 0 controller(s)
     Test valid ctrl authentication
    -NQN:blktests-subsystem-1 disconnected 1 controller(s)
    ...
    (Run 'diff -u tests/nvme/044.out /home/wagi/work/blktests/results/nodev/nvme/044.out.bad' to see the entire diff)
nvme/045 (Test re-authentication)                            [passed]
    runtime  5.689s  ...  5.835s
nvme/047 (test different queue types for fabric transports)  [not run]
    nvme_trtype=fc is not supported in this test
nvme/048 (Test queue count changes on reconnect)             [failed]
    runtime  16.271s  ...  15.564s
    --- tests/nvme/048.out      2023-04-18 17:43:18.171745996 +0200
    +++ /home/wagi/work/blktests/results/nodev/nvme/048.out.bad 2023-05-03 10:28:43.931924866 +0200
    @@ -1,3 +1,7 @@
     Running nvme/048
    +expected state "connecting" not  reached within 5 seconds
    +FAIL
    +expected state "connecting" not  reached within 5 seconds
    +FAIL
     NQN:blktests-subsystem-1 disconnected 1 controller(s)
     Test complete

changes:
v3:
 - changed subject prefix
 - drop the rdma cleanup reordering part

v2:
  - release fc resource in reverse order
  - https://lore.kernel.org/linux-nvme/20230419084757.24846-1-dwagner@suse.de/
v1:
  - https://lore.kernel.org/linux-nvme/20230418123252.3725-1-dwagner@suse.de/

Daniel Wagner (2):
  nvme/rc: Cleanup fc ports in reverse order
  nvme/rc: Cleanup fc resource before module unloading

 tests/nvme/rc | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

-- 
2.40.0



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH blktests v3 1/2] nvme/rc: Cleanup fc ports in reverse order
  2023-05-03  8:38 [PATCH blktests v3 0/2] nvme_trtype=fc fixes Daniel Wagner
@ 2023-05-03  8:38 ` Daniel Wagner
  2023-05-03  8:38 ` [PATCH blktests v3 2/2] nvme/rc: Cleanup fc resource before module unloading Daniel Wagner
  2023-06-01  9:01 ` [PATCH blktests v3 0/2] nvme_trtype=fc fixes Daniel Wagner
  2 siblings, 0 replies; 6+ messages in thread
From: Daniel Wagner @ 2023-05-03  8:38 UTC (permalink / raw)
  To: linux-nvme
  Cc: linux-kernel, linux-block, Chaitanya Kulkarni,
	Shin'ichiro Kawasaki, Sagi Grimberg, Hannes Reinecke,
	Daniel Wagner

We need to free the resources in the opposite order as we allocate them.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
---
 tests/nvme/rc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/nvme/rc b/tests/nvme/rc
index b44239446dcf..ec0cc2d8d8cc 100644
--- a/tests/nvme/rc
+++ b/tests/nvme/rc
@@ -204,10 +204,10 @@ _cleanup_fcloop() {
 	local remote_wwnn="${3:-$def_remote_wwnn}"
 	local remote_wwpn="${4:-$def_remote_wwpn}"
 
-	_nvme_fcloop_del_rport "${local_wwnn}" "${local_wwpn}" \
-			       "${remote_wwnn}" "${remote_wwpn}"
 	_nvme_fcloop_del_tport "${remote_wwnn}" "${remote_wwpn}"
 	_nvme_fcloop_del_lport "${local_wwnn}" "${local_wwpn}"
+	_nvme_fcloop_del_rport "${local_wwnn}" "${local_wwpn}" \
+			       "${remote_wwnn}" "${remote_wwpn}"
 }
 
 _cleanup_nvmet() {
-- 
2.40.0



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH blktests v3 2/2] nvme/rc: Cleanup fc resource before module unloading
  2023-05-03  8:38 [PATCH blktests v3 0/2] nvme_trtype=fc fixes Daniel Wagner
  2023-05-03  8:38 ` [PATCH blktests v3 1/2] nvme/rc: Cleanup fc ports in reverse order Daniel Wagner
@ 2023-05-03  8:38 ` Daniel Wagner
  2023-06-01  9:01 ` [PATCH blktests v3 0/2] nvme_trtype=fc fixes Daniel Wagner
  2 siblings, 0 replies; 6+ messages in thread
From: Daniel Wagner @ 2023-05-03  8:38 UTC (permalink / raw)
  To: linux-nvme
  Cc: linux-kernel, linux-block, Chaitanya Kulkarni,
	Shin'ichiro Kawasaki, Sagi Grimberg, Hannes Reinecke,
	Daniel Wagner

Cleanup all fc resources before unloading the module, so it the
operations are in reverse order how we setup them.

Also unload the nvme-fcloop after usage.

Signed-off-by: Daniel Wagner <dwagner@suse.de>
---
 tests/nvme/rc | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/tests/nvme/rc b/tests/nvme/rc
index ec0cc2d8d8cc..24803afe8879 100644
--- a/tests/nvme/rc
+++ b/tests/nvme/rc
@@ -260,6 +260,11 @@ _cleanup_nvmet() {
 	shopt -u nullglob
 	trap SIGINT
 
+	if [[ "${nvme_trtype}" == "fc" ]]; then
+		_cleanup_fcloop "${def_local_wwnn}" "${def_local_wwpn}" \
+			        "${def_remote_wwnn}" "${def_remote_wwpn}"
+		modprobe -rq nvme-fcloop
+	fi
 	modprobe -rq nvme-"${nvme_trtype}" 2>/dev/null
 	if [[ "${nvme_trtype}" != "loop" ]]; then
 		modprobe -rq nvmet-"${nvme_trtype}" 2>/dev/null
@@ -268,10 +273,6 @@ _cleanup_nvmet() {
 	if [[ "${nvme_trtype}" == "rdma" ]]; then
 		stop_soft_rdma
 	fi
-	if [[ "${nvme_trtype}" == "fc" ]]; then
-		_cleanup_fcloop "${def_local_wwnn}" "${def_local_wwpn}" \
-			        "${def_remote_wwnn}" "${def_remote_wwpn}"
-	fi
 }
 
 _setup_nvmet() {
-- 
2.40.0



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH blktests v3 0/2] nvme_trtype=fc fixes
  2023-05-03  8:38 [PATCH blktests v3 0/2] nvme_trtype=fc fixes Daniel Wagner
  2023-05-03  8:38 ` [PATCH blktests v3 1/2] nvme/rc: Cleanup fc ports in reverse order Daniel Wagner
  2023-05-03  8:38 ` [PATCH blktests v3 2/2] nvme/rc: Cleanup fc resource before module unloading Daniel Wagner
@ 2023-06-01  9:01 ` Daniel Wagner
  2023-06-06  5:24   ` Shinichiro Kawasaki
  2 siblings, 1 reply; 6+ messages in thread
From: Daniel Wagner @ 2023-06-01  9:01 UTC (permalink / raw)
  To: linux-nvme
  Cc: linux-kernel, linux-block, Chaitanya Kulkarni,
	Shin'ichiro Kawasaki, Sagi Grimberg, Hannes Reinecke

These patches are necessary to get to get the FC transport off the ground. At
least with those applied, blktests should be in shape and only the kernel part
needs to be addressed from then one.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH blktests v3 0/2] nvme_trtype=fc fixes
  2023-06-01  9:01 ` [PATCH blktests v3 0/2] nvme_trtype=fc fixes Daniel Wagner
@ 2023-06-06  5:24   ` Shinichiro Kawasaki
  2023-06-06  6:07     ` Daniel Wagner
  0 siblings, 1 reply; 6+ messages in thread
From: Shinichiro Kawasaki @ 2023-06-06  5:24 UTC (permalink / raw)
  To: Daniel Wagner
  Cc: linux-nvme, linux-kernel, linux-block, Chaitanya Kulkarni,
	Shin'ichiro Kawasaki, Sagi Grimberg, Hannes Reinecke

On Jun 01, 2023 / 11:01, Daniel Wagner wrote:
> These patches are necessary to get to get the FC transport off the ground. At
> least with those applied, blktests should be in shape and only the kernel part
> needs to be addressed from then one.

Sorry, I missed this v3 post. I've just applied them. Thanks!


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH blktests v3 0/2] nvme_trtype=fc fixes
  2023-06-06  5:24   ` Shinichiro Kawasaki
@ 2023-06-06  6:07     ` Daniel Wagner
  0 siblings, 0 replies; 6+ messages in thread
From: Daniel Wagner @ 2023-06-06  6:07 UTC (permalink / raw)
  To: Shinichiro Kawasaki
  Cc: linux-nvme, linux-kernel, linux-block, Chaitanya Kulkarni,
	Shin'ichiro Kawasaki, Sagi Grimberg, Hannes Reinecke

On Tue, Jun 06, 2023 at 05:24:22AM +0000, Shinichiro Kawasaki wrote:
> On Jun 01, 2023 / 11:01, Daniel Wagner wrote:
> > These patches are necessary to get to get the FC transport off the ground. At
> > least with those applied, blktests should be in shape and only the kernel part
> > needs to be addressed from then one.
> 
> Sorry, I missed this v3 post. I've just applied them. Thanks!

No worries. Thanks!

Since we have all in place now, I'll rebase/repost the fc patches again.


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-06-06  6:08 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-03  8:38 [PATCH blktests v3 0/2] nvme_trtype=fc fixes Daniel Wagner
2023-05-03  8:38 ` [PATCH blktests v3 1/2] nvme/rc: Cleanup fc ports in reverse order Daniel Wagner
2023-05-03  8:38 ` [PATCH blktests v3 2/2] nvme/rc: Cleanup fc resource before module unloading Daniel Wagner
2023-06-01  9:01 ` [PATCH blktests v3 0/2] nvme_trtype=fc fixes Daniel Wagner
2023-06-06  5:24   ` Shinichiro Kawasaki
2023-06-06  6:07     ` Daniel Wagner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).