linux-nvme.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: ckulkarnilinux@gmail.com (Chaitanya Kulkarni)
Subject: [PATCH V2 00/46] nvmftests: NVMe Over Fabrics Unit Test Framework
Date: Tue, 24 Oct 2017 18:30:17 -0700	[thread overview]
Message-ID: <1508895063-6280-1-git-send-email-ckulkarnilinux@gmail.com> (raw)

From: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>

Hi,

This contains second version of the NVMe Over Fabrics unit test framework (nvmftests).

Changes since V1:-
    1. Addition of new testcases to improve the coverage.
    2. Improved directory structure for code clarity.
    3. Libification of the common code.
    4. Support to use different block devices on the target side.
    5. Centralize test configuration management.
    6. Support to execute File System related operations on the host side.
    7. Adjust the code to incorporate the comments received for the
       first version.
    8. Support for setting different log levels for each component.
    9. Support for quick performance measurements.
    10. Class hierarchy documentation and sequence diagram.
    11. Improved workqueue management for host namesapce to
        run parallel commands.

It will be great if I can get some feedback, I'll be happy to incorporate
the comments and make it more usable.

Following is the code repository for current code:-
    https://github.com/ChaitanayaKulkarni/nvmftests/releases

For the purpose of review, this patch series is generated against
$KERN_SRC/tools/testing/selftests/.

Regards,
-Chaitanya

Chaitanya Kulkarni (46):
  nvmftests: add nvmftests README file
  nvmftests-utils: add utility class to define constants
  nvmftests-utils: add shell command package
  nvmftests-utils: add log package
  nvmftests-utils: add diskio package
  nvmftests-utils: add fs package
  nvmftests-utils: add misc package
  nvmftests: add utils package
  nvmftests-nvmf: add target config generator
  nvmftests-nvmf: add support for target ns
  nvmftests-nvmf: add support for target port
  nvmftests-nvmf: add support for target subsystem
  nvmftests-nvmf: add support for target
  nvmftests-nvmf: add target package
  nvmftests-nvmf: add support for host ns
  nvmftests-nvmf: add support for host subsystem
  nvmftests-nvmf: add support for host
  nvmftests-nvmf: add host package
  nvmftests-nvmf: add nvmf core package
  nvmftests-tests: add user config file
  nvmftests-tests: add support for test logger
  nvmftests-tests: add a parent class for tests
  nvmftests-tests: add a test for generic block device
  nvmftests-tests: add a test for ns-descs
  nvmftests-tests: add a test for create/delete host
  nvmftests-tests: add a test for NVMe PCIe target ns
  nvmftests-tests: add a test to create and delete target
  nvmftests-tests: add a test for controller rescan
  nvmftests-tests: add a test for controller reset
  nvmftests-tests: add a test for get-ns-id
  nvmftests-tests: add a test for identify controller
  nvmftests-tests: add a test for identify namespace
  nvmftests-tests: add a test for smart-log
  nvmftests-tests: add a test to run IOs with dd
  nvmftests-tests: add a test to run IOs parallely with dd
  nvmftests-tests: add a test to run mkfs and fio
  nvmftests-tests: add a test to enable/disable target ns
  nvmftests-tests: add a test to run IOs with dd randomly
  nvmftests-tests: add a test to scan host ctrls and ns
  nvmftests-tests: add a test to scan target subsys/ns
  nvmftests-tests: add a target template
  nvmftests-tests: add a host template
  nvmftests-tests: add a test to run traffic and disable ns
  nvmftests-tests: add a test to measure perf with fio
  nvmftests: add class documentation and sequence diagram
  nvmftests: add Makefile

 tools/testing/selftests/nvmftests/Makefile         |  63 +++
 tools/testing/selftests/nvmftests/README.md        | 177 +++++++
 tools/testing/selftests/nvmftests/doc/Makefile     |   7 +
 .../selftests/nvmftests/doc/sequence-diag/Makefile |   7 +
 .../nvmftests/doc/sequence-diag/nvmftests.plantuml |  98 ++++
 tools/testing/selftests/nvmftests/nvmf/__init__.py |  28 ++
 .../selftests/nvmftests/nvmf/host/__init__.py      |  23 +
 .../testing/selftests/nvmftests/nvmf/host/host.py  | 365 ++++++++++++++
 .../selftests/nvmftests/nvmf/host/host_ns.py       | 262 ++++++++++
 .../nvmftests/nvmf/host/host_subsystem.py          | 527 +++++++++++++++++++++
 .../selftests/nvmftests/nvmf/target/__init__.py    |  25 +
 .../selftests/nvmftests/nvmf/target/port.py        | 122 +++++
 .../selftests/nvmftests/nvmf/target/target.py      | 210 ++++++++
 .../nvmf/target/target_config_generator.py         | 222 +++++++++
 .../selftests/nvmftests/nvmf/target/target_ns.py   | 117 +++++
 .../nvmftests/nvmf/target/target_subsystem.py      | 140 ++++++
 .../nvmftests/tests/config/nvmftests.json          |  83 ++++
 .../testing/selftests/nvmftests/tests/nvmf_test.py | 204 ++++++++
 .../selftests/nvmftests/tests/nvmf_test_logger.py  |  50 ++
 .../nvmftests/tests/test_nvmf_create_gen_blk.py    |  71 +++
 .../nvmftests/tests/test_nvmf_create_host.py       |  71 +++
 .../nvmftests/tests/test_nvmf_create_pci_target.py |  70 +++
 .../nvmftests/tests/test_nvmf_create_target.py     |  62 +++
 .../nvmftests/tests/test_nvmf_ctrl_rescan.py       |  63 +++
 .../nvmftests/tests/test_nvmf_ctrl_reset.py        |  63 +++
 .../nvmftests/tests/test_nvmf_get_ns_id.py         |  63 +++
 .../nvmftests/tests/test_nvmf_host_template.py     |  62 +++
 .../selftests/nvmftests/tests/test_nvmf_id_ctrl.py |  63 +++
 .../selftests/nvmftests/tests/test_nvmf_id_ns.py   |  63 +++
 .../selftests/nvmftests/tests/test_nvmf_io.py      |  65 +++
 .../selftests/nvmftests/tests/test_nvmf_mkfs.py    |  65 +++
 .../nvmftests/tests/test_nvmf_ns_descs.py          |  63 +++
 .../nvmftests/tests/test_nvmf_ns_enable_disable.py |  83 ++++
 .../nvmftests/tests/test_nvmf_parallel_io.py       |  65 +++
 .../selftests/nvmftests/tests/test_nvmf_perf.py    |  63 +++
 .../nvmftests/tests/test_nvmf_random_io.py         |  65 +++
 .../nvmftests/tests/test_nvmf_run_host_traffic.py  | 111 +++++
 .../nvmftests/tests/test_nvmf_scan_host.py         |  76 +++
 .../nvmftests/tests/test_nvmf_scan_target.py       |  76 +++
 .../nvmftests/tests/test_nvmf_smart_log.py         |  63 +++
 .../nvmftests/tests/test_nvmf_target_template.py   |  64 +++
 .../testing/selftests/nvmftests/utils/__init__.py  |  32 ++
 .../selftests/nvmftests/utils/const/__init__.py    |  21 +
 .../selftests/nvmftests/utils/const/const.py       |  50 ++
 .../selftests/nvmftests/utils/diskio/__init__.py   |  21 +
 .../testing/selftests/nvmftests/utils/diskio/dd.py |  50 ++
 .../selftests/nvmftests/utils/diskio/fio.py        |  74 +++
 .../selftests/nvmftests/utils/fs/__init__.py       |  21 +
 .../testing/selftests/nvmftests/utils/fs/ext4fs.py | 108 +++++
 .../selftests/nvmftests/utils/fs/filesystem.py     | 122 +++++
 .../selftests/nvmftests/utils/log/__init__.py      |  20 +
 tools/testing/selftests/nvmftests/utils/log/log.py |  58 +++
 .../selftests/nvmftests/utils/misc/__init__.py     |  23 +
 .../nvmftests/utils/misc/generic_blk_dev.py        |  58 +++
 .../selftests/nvmftests/utils/misc/loopback.py     | 103 ++++
 .../selftests/nvmftests/utils/misc/nvme_pci.py     | 114 +++++
 .../selftests/nvmftests/utils/shell/__init__.py    |  20 +
 .../testing/selftests/nvmftests/utils/shell/cmd.py |  47 ++
 58 files changed, 5182 insertions(+)
 create mode 100644 tools/testing/selftests/nvmftests/Makefile
 create mode 100644 tools/testing/selftests/nvmftests/README.md
 create mode 100644 tools/testing/selftests/nvmftests/doc/Makefile
 create mode 100644 tools/testing/selftests/nvmftests/doc/sequence-diag/Makefile
 create mode 100644 tools/testing/selftests/nvmftests/doc/sequence-diag/nvmftests.plantuml
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/host/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/host/host.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/host/host_ns.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/host/host_subsystem.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/target/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/target/port.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/target/target.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/target/target_config_generator.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/target/target_ns.py
 create mode 100644 tools/testing/selftests/nvmftests/nvmf/target/target_subsystem.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/config/nvmftests.json
 create mode 100644 tools/testing/selftests/nvmftests/tests/nvmf_test.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/nvmf_test_logger.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_create_gen_blk.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_create_host.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_create_pci_target.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_create_target.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_ctrl_rescan.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_ctrl_reset.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_get_ns_id.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_host_template.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_id_ctrl.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_id_ns.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_io.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_mkfs.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_ns_descs.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_ns_enable_disable.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_parallel_io.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_perf.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_random_io.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_run_host_traffic.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_scan_host.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_scan_target.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_smart_log.py
 create mode 100644 tools/testing/selftests/nvmftests/tests/test_nvmf_target_template.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/const/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/const/const.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/diskio/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/diskio/dd.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/diskio/fio.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/fs/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/fs/ext4fs.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/fs/filesystem.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/log/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/log/log.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/misc/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/misc/generic_blk_dev.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/misc/loopback.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/misc/nvme_pci.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/shell/__init__.py
 create mode 100644 tools/testing/selftests/nvmftests/utils/shell/cmd.py

-- 
1.8.3.1

             reply	other threads:[~2017-10-25  1:30 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-25  1:30 Chaitanya Kulkarni [this message]
2017-10-25  1:30 ` [PATCH V2 01/46] nvmftests: add nvmftests README file Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 02/46] nvmftests-utils: add utility class to define constants Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 03/46] nvmftests-utils: add shell command package Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 04/46] nvmftests-utils: add log package Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 05/46] nvmftests-utils: add diskio package Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 06/46] nvmftests-utils: add fs package Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 07/46] nvmftests-utils: add misc package Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 08/46] nvmftests: add utils package Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 09/46] nvmftests-nvmf: add target config generator Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 10/46] nvmftests-nvmf: add support for target ns Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 11/46] nvmftests-nvmf: add support for target port Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 12/46] nvmftests-nvmf: add support for target subsystem Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 13/46] nvmftests-nvmf: add support for target Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 14/46] nvmftests-nvmf: add target package Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 15/46] nvmftests-nvmf: add support for host ns Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 16/46] nvmftests-nvmf: add support for host subsystem Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 17/46] nvmftests-nvmf: add support for host Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 18/46] nvmftests-nvmf: add host package Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 19/46] nvmftests-nvmf: add nvmf core package Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 20/46] nvmftests-tests: add user config file Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 21/46] nvmftests-tests: add support for test logger Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 22/46] nvmftests-tests: add a parent class for tests Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 23/46] nvmftests-tests: add a test for generic block device Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 24/46] nvmftests-tests: add a test for ns-descs Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 25/46] nvmftests-tests: add a test for create/delete host Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 26/46] nvmftests-tests: add a test for NVMe PCIe target ns Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 27/46] nvmftests-tests: add a test to create and delete target Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 28/46] nvmftests-tests: add a test for controller rescan Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 29/46] nvmftests-tests: add a test for controller reset Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 30/46] nvmftests-tests: add a test for get-ns-id Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 31/46] nvmftests-tests: add a test for identify controller Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 32/46] nvmftests-tests: add a test for identify namespace Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 33/46] nvmftests-tests: add a test for smart-log Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 34/46] nvmftests-tests: add a test to run IOs with dd Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 35/46] nvmftests-tests: add a test to run IOs parallely " Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 36/46] nvmftests-tests: add a test to run mkfs and fio Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 37/46] nvmftests-tests: add a test to enable/disable target ns Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 38/46] nvmftests-tests: add a test to run IOs with dd randomly Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 39/46] nvmftests-tests: add a test to scan host ctrls and ns Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 40/46] nvmftests-tests: add a test to scan target subsys/ns Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 41/46] nvmftests-tests: add a target template Chaitanya Kulkarni
2017-10-25  1:30 ` [PATCH V2 42/46] nvmftests-tests: add a host template Chaitanya Kulkarni
2017-10-25  1:31 ` [PATCH V2 43/46] nvmftests-tests: add a test to run traffic and disable ns Chaitanya Kulkarni
2017-10-25  1:31 ` [PATCH V2 44/46] nvmftests-tests: add a test to measure perf with fio Chaitanya Kulkarni
2017-10-25  1:31 ` [PATCH V2 45/46] nvmftests: add class documentation and sequence diagram Chaitanya Kulkarni
2017-10-25  1:31 ` [PATCH V2 46/46] nvmftests: add Makefile Chaitanya Kulkarni
2017-10-25  7:30 ` [PATCH V2 00/46] nvmftests: NVMe Over Fabrics Unit Test Framework Johannes Thumshirn
2018-02-21 13:00 ` Michael Moese

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=1508895063-6280-1-git-send-email-ckulkarnilinux@gmail.com \
    --to=ckulkarnilinux@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 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).