All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/6] nvmet: cleanup and status, error log fix
@ 2021-02-16 21:31 Chaitanya Kulkarni
  2021-02-16 21:31 ` [PATCH 1/6] nvmet: remove duplicate status assignment Chaitanya Kulkarni
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: Chaitanya Kulkarni @ 2021-02-16 21:31 UTC (permalink / raw)
  To: linux-nvme; +Cc: kbusch, hch, Chaitanya Kulkarni, sagi

Hi,

This removes duplicate status value assignments, unnecessary function
parameters and fixes the error log page update.

Since the current nvme-5.12 is broken I've tested this series with the
debug diff which is listed in the test report along with the blktests.

-ck

Chaitanya Kulkarni (6):
  nvmet: remove duplicate status assignment
  nvmet: set status on actual error condition
  nvmet: check and set the right err location
  nvmet: remove unnecessary function parameters
  nvmet: remove unnecessary function parameter
  nvmet: remove unnecessary function parameters

 drivers/nvme/target/admin-cmd.c   |  2 +-
 drivers/nvme/target/core.c        | 58 +++++++++++++++----------------
 drivers/nvme/target/fabrics-cmd.c | 18 +++++-----
 drivers/nvme/target/nvmet.h       | 10 +++---
 4 files changed, 43 insertions(+), 45 deletions(-)
# ./compile_nvme.sh 
+ umount /mnt/nvme0n1
+ clear_dmesg
umount: /mnt/nvme0n1: not mounted
+ modprobe -r nvme-fabrics
+ modprobe -r nvme_loop
+ modprobe -r nvmet
+ modprobe -r nvme
+ sleep 1
+ modprobe -r nvme-core
+ lsmod
+ grep nvme
+ git diff
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index d77f3f26d8d3..cedf704adac6 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -1167,7 +1167,8 @@ static int nvme_submit_user_cmd(struct request_queue *q,
                if (ret)
                        goto out;
                bio = req->bio;
-               bio_set_dev(bio, bdev);
+               if(bdev)
+                       bio_set_dev(bio, bdev);
                if (bdev && meta_buffer && meta_len) {
                        meta = nvme_add_user_metadata(bio, meta_buffer, meta_len,
                                        meta_seed, write);
diff --git a/drivers/nvme/target/loop.c b/drivers/nvme/target/loop.c
index cb6f86572b24..38fffee6b85e 100644
--- a/drivers/nvme/target/loop.c
+++ b/drivers/nvme/target/loop.c
@@ -688,7 +688,8 @@ static struct nvmf_transport_ops nvme_loop_transport = {
        .name           = "loop",
        .module         = THIS_MODULE,
        .create_ctrl    = nvme_loop_create_ctrl,
-       .allowed_opts   = NVMF_OPT_TRADDR,
+       .allowed_opts   = NVMF_OPT_TRADDR | NVMF_OPT_CTRL_LOSS_TMO,
+
 };
 
 static int __init nvme_loop_init_module(void)
++ nproc
+ make -j 64 M=drivers/nvme/ modules
  CC [M]  drivers/nvme//target/configfs.o
  CC [M]  drivers/nvme//target/core.o
  CC [M]  drivers/nvme//target/admin-cmd.o
  CC [M]  drivers/nvme//target/fabrics-cmd.o
  CC [M]  drivers/nvme//target/discovery.o
  CC [M]  drivers/nvme//target/io-cmd-file.o
  CC [M]  drivers/nvme//target/io-cmd-bdev.o
  CC [M]  drivers/nvme//host/core.o
  CC [M]  drivers/nvme//target/passthru.o
  CC [M]  drivers/nvme//target/trace.o
  CC [M]  drivers/nvme//host/trace.o
  CC [M]  drivers/nvme//host/lightnvm.o
  CC [M]  drivers/nvme//target/rdma.o
  CC [M]  drivers/nvme//target/loop.o
  CC [M]  drivers/nvme//host/zns.o
  CC [M]  drivers/nvme//host/hwmon.o
  CC [M]  drivers/nvme//target/fc.o
  CC [M]  drivers/nvme//target/fcloop.o
  CC [M]  drivers/nvme//host/pci.o
  CC [M]  drivers/nvme//target/tcp.o
  CC [M]  drivers/nvme//host/fabrics.o
  CC [M]  drivers/nvme//host/rdma.o
  CC [M]  drivers/nvme//host/fc.o
  CC [M]  drivers/nvme//host/tcp.o
  LD [M]  drivers/nvme//target/nvme-loop.o
  LD [M]  drivers/nvme//target/nvme-fcloop.o
  LD [M]  drivers/nvme//host/nvme-fabrics.o
  LD [M]  drivers/nvme//target/nvmet-tcp.o
  LD [M]  drivers/nvme//host/nvme.o
  LD [M]  drivers/nvme//target/nvmet-rdma.o
  LD [M]  drivers/nvme//host/nvme-tcp.o
  LD [M]  drivers/nvme//target/nvmet.o
  LD [M]  drivers/nvme//target/nvmet-fc.o
  LD [M]  drivers/nvme//host/nvme-rdma.o
  LD [M]  drivers/nvme//host/nvme-fc.o
  LD [M]  drivers/nvme//host/nvme-core.o
  MODPOST drivers/nvme//Module.symvers
  LD [M]  drivers/nvme//host/nvme-core.ko
  LD [M]  drivers/nvme//host/nvme-fabrics.ko
  LD [M]  drivers/nvme//host/nvme-fc.ko
  LD [M]  drivers/nvme//host/nvme-rdma.ko
  LD [M]  drivers/nvme//host/nvme-tcp.ko
  LD [M]  drivers/nvme//host/nvme.ko
  CC [M]  drivers/nvme//target/nvme-fcloop.mod.o
  CC [M]  drivers/nvme//target/nvme-loop.mod.o
  CC [M]  drivers/nvme//target/nvmet-fc.mod.o
  CC [M]  drivers/nvme//target/nvmet-rdma.mod.o
  CC [M]  drivers/nvme//target/nvmet-tcp.mod.o
  CC [M]  drivers/nvme//target/nvmet.mod.o
  LD [M]  drivers/nvme//target/nvmet.ko
  LD [M]  drivers/nvme//target/nvme-loop.ko
  LD [M]  drivers/nvme//target/nvmet-rdma.ko
  LD [M]  drivers/nvme//target/nvme-fcloop.ko
  LD [M]  drivers/nvme//target/nvmet-tcp.ko
  LD [M]  drivers/nvme//target/nvmet-fc.ko
+ HOST=drivers/nvme/host
+ TARGET=drivers/nvme/target
++ uname -r
+ HOST_DEST=/lib/modules/5.11.0-rc5nvme+/kernel/drivers/nvme/host/
++ uname -r
+ TARGET_DEST=/lib/modules/5.11.0-rc5nvme+/kernel/drivers/nvme/target/
+ cp drivers/nvme/host/nvme-core.ko drivers/nvme/host/nvme-fabrics.ko drivers/nvme/host/nvme-fc.ko drivers/nvme/host/nvme.ko drivers/nvme/host/nvme-rdma.ko drivers/nvme/host/nvme-tcp.ko /lib/modules/5.11.0-rc5nvme+/kernel/drivers/nvme/host//
+ cp drivers/nvme/target/nvme-fcloop.ko drivers/nvme/target/nvme-loop.ko drivers/nvme/target/nvmet-fc.ko drivers/nvme/target/nvmet.ko drivers/nvme/target/nvmet-rdma.ko drivers/nvme/target/nvmet-tcp.ko /lib/modules/5.11.0-rc5nvme+/kernel/drivers/nvme/target//
+ ls -lrth /lib/modules/5.11.0-rc5nvme+/kernel/drivers/nvme/host/ /lib/modules/5.11.0-rc5nvme+/kernel/drivers/nvme/target//
/lib/modules/5.11.0-rc5nvme+/kernel/drivers/nvme/host/:
total 8.0M
-rw-r--r--. 1 root root 3.0M Feb 16 12:45 nvme-core.ko
-rw-r--r--. 1 root root 643K Feb 16 12:45 nvme-fabrics.ko
-rw-r--r--. 1 root root 1.2M Feb 16 12:45 nvme-fc.ko
-rw-r--r--. 1 root root 1.1M Feb 16 12:45 nvme.ko
-rw-r--r--. 1 root root 1.2M Feb 16 12:45 nvme-rdma.ko
-rw-r--r--. 1 root root 1.1M Feb 16 12:45 nvme-tcp.ko

/lib/modules/5.11.0-rc5nvme+/kernel/drivers/nvme/target//:
total 8.2M
-rw-r--r--. 1 root root 712K Feb 16 12:45 nvme-fcloop.ko
-rw-r--r--. 1 root root 619K Feb 16 12:45 nvme-loop.ko
-rw-r--r--. 1 root root 1.1M Feb 16 12:45 nvmet-fc.ko
-rw-r--r--. 1 root root 4.0M Feb 16 12:45 nvmet.ko
-rw-r--r--. 1 root root 1.1M Feb 16 12:45 nvmet-rdma.ko
-rw-r--r--. 1 root root 852K Feb 16 12:45 nvmet-tcp.ko
+ modprobe nvme
 gitlog -7 
7f0c29a24505 (HEAD -> nvme-5.12) nvmet: remove unnecessary function parameters
e8e1ea8fb333 nvmet: remove unnecessary function parameter
f169254686f6 nvmet: remove unnecessary function parameters
fc38bf1595ce nvmet: check and set the right err location
9b176efea50a nvmet: set status on actual error condition
0384837a4690 nvmet: remove duplicate status assignment
9bb31b0ab2e3 Merge branch 'nvme-5.12' of git://git.infradead.org/nvme into nvme-5.12
# cdblktests 
# ./check nvme
nvme/002 (create many subsystems and test discovery)         [passed]
    runtime  35.423s  ...  36.789s
nvme/003 (test if we're sending keep-alives to a discovery controller) [passed]
    runtime  10.159s  ...  10.177s
nvme/004 (test nvme and nvmet UUID NS descriptors)           [passed]
    runtime  1.808s  ...  1.743s
nvme/005 (reset local loopback target)                       [not run]
    nvme_core module does not have parameter multipath
nvme/006 (create an NVMeOF target with a block device-backed ns) [passed]
    runtime  0.126s  ...  0.141s
nvme/007 (create an NVMeOF target with a file-backed ns)     [passed]
    runtime  0.098s  ...  0.096s
nvme/008 (create an NVMeOF host with a block device-backed ns) [passed]
    runtime  1.777s  ...  1.756s
nvme/009 (create an NVMeOF host with a file-backed ns)       [passed]
    runtime  1.727s  ...  1.709s
nvme/010 (run data verification fio job on NVMeOF block device-backed ns) [passed]
    runtime  29.228s  ...  19.931s
nvme/011 (run data verification fio job on NVMeOF file-backed ns) [passed]
    runtime  199.625s  ...  267.604s
nvme/012 (run mkfs and data verification fio job on NVMeOF block device-backed ns) [passed]
    runtime  72.525s  ...  49.320s
nvme/013 (run mkfs and data verification fio job on NVMeOF file-backed ns) [passed]
    runtime    ...  335.511s
nvme/014 (flush a NVMeOF block device-backed ns)             [passed]
    runtime  20.695s  ...  21.308s
nvme/015 (unit test for NVMe flush for file backed ns)       [passed]
    runtime  22.596s  ...  21.888s
nvme/016 (create/delete many NVMeOF block device-backed ns and test discovery) [passed]
    runtime  16.349s  ...  19.097s
nvme/017 (create/delete many file-ns and test discovery)     [passed]
    runtime  15.889s  ...  19.393s
nvme/018 (unit test NVMe-oF out of range access on a file backend) [passed]
    runtime  1.655s  ...  1.718s
nvme/019 (test NVMe DSM Discard command on NVMeOF block-device ns) [passed]
    runtime  1.718s  ...  1.747s
nvme/020 (test NVMe DSM Discard command on NVMeOF file-backed ns) [passed]
    runtime  1.662s  ...  1.700s
nvme/021 (test NVMe list command on NVMeOF file-backed ns)   [passed]
    runtime  1.713s  ...  1.702s
nvme/022 (test NVMe reset command on NVMeOF file-backed ns)  [passed]
    runtime  2.100s  ...  2.131s
nvme/023 (test NVMe smart-log command on NVMeOF block-device ns) [passed]
    runtime  1.711s  ...  1.739s
nvme/024 (test NVMe smart-log command on NVMeOF file-backed ns) [passed]
    runtime  1.663s  ...  1.708s
nvme/025 (test NVMe effects-log command on NVMeOF file-backed ns) [passed]
    runtime  1.666s  ...  1.692s
nvme/026 (test NVMe ns-descs command on NVMeOF file-backed ns) [passed]
    runtime  1.652s  ...  1.798s
nvme/027 (test NVMe ns-rescan command on NVMeOF file-backed ns) [passed]
    runtime  1.650s  ...  1.713s
nvme/028 (test NVMe list-subsys command on NVMeOF file-backed ns) [passed]
    runtime  1.648s  ...  1.695s
nvme/029 (test userspace IO via nvme-cli read/write interface) [passed]
    runtime  2.011s  ...  2.168s
nvme/030 (ensure the discovery generation counter is updated appropriately) [passed]
    runtime  0.310s  ...  0.379s
nvme/031 (test deletion of NVMeOF controllers immediately after setup) [passed]
    runtime  5.474s  ...  5.774s
nvme/038 (test deletion of NVMeOF subsystem without enabling) [passed]
    runtime  0.043s  ...  0.051s


-- 
2.22.1


_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme

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

end of thread, other threads:[~2021-02-24 16:32 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-16 21:31 [PATCH 0/6] nvmet: cleanup and status, error log fix Chaitanya Kulkarni
2021-02-16 21:31 ` [PATCH 1/6] nvmet: remove duplicate status assignment Chaitanya Kulkarni
2021-02-16 21:31 ` [PATCH 2/6] nvmet: set status on actual error condition Chaitanya Kulkarni
2021-02-24 16:30   ` Christoph Hellwig
2021-02-16 21:31 ` [PATCH 3/6] nvmet: check and set the right err location Chaitanya Kulkarni
2021-02-24 16:31   ` Christoph Hellwig
2021-02-16 21:31 ` [PATCH 4/6] nvmet: remove unnecessary function parameters Chaitanya Kulkarni
2021-02-16 21:31 ` [PATCH 5/6] nvmet: remove unnecessary function parameter Chaitanya Kulkarni
2021-02-16 21:31 ` [PATCH 6/6] nvmet: remove unnecessary function parameters Chaitanya Kulkarni
2021-02-24 16:32 ` [PATCH 0/6] nvmet: cleanup and status, error log fix Christoph Hellwig

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.