From: Sagi Grimberg Date: Thu, 3 Sep 2020 23:53:31 +0000 (-0700) Subject: nvme: consolidate nvme requirements based on transport type X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=0cc6cf57628cccd0141723fb14283cdc3f3f4549;p=users%2Fhch%2Fblktests.git nvme: consolidate nvme requirements based on transport type Right now, only pci and loop have tests, hence these are the only ones that are allowed. The user can pass an env variable nvme_trtype and check for the necessary modules. This allows prepares us to support other transport types. Note that test 031 is designed to run only with nvme, hence it overrides the environment variable to nvme_trtype=pci. Signed-off-by: Sagi Grimberg --- diff --git a/tests/nvme/002 b/tests/nvme/002 index 07b7fda..aaa5ec4 100755 --- a/tests/nvme/002 +++ b/tests/nvme/002 @@ -10,7 +10,8 @@ DESCRIPTION="create many subsystems and test discovery" requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/003 b/tests/nvme/003 index ed0feca..fd696d9 100755 --- a/tests/nvme/003 +++ b/tests/nvme/003 @@ -11,7 +11,8 @@ DESCRIPTION="test if we're sending keep-alives to a discovery controller" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/004 b/tests/nvme/004 index 0debcd9..b841a8d 100755 --- a/tests/nvme/004 +++ b/tests/nvme/004 @@ -12,7 +12,8 @@ DESCRIPTION="test nvme and nvmet UUID NS descriptors" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/005 b/tests/nvme/005 index 325f2b6..df0900b 100755 --- a/tests/nvme/005 +++ b/tests/nvme/005 @@ -11,9 +11,9 @@ DESCRIPTION="reset local loopback target" QUICK=1 requires() { - _have_modules loop nvme-core nvme-loop nvmet && \ - _have_module_param_value nvme_core multipath Y && \ - _have_configfs && _have_program nvme + _nvme_requires + _have_modules loop && \ + _have_module_param_value nvme_core multipath Y } test() { diff --git a/tests/nvme/006 b/tests/nvme/006 index 6c8e185..3f47613 100755 --- a/tests/nvme/006 +++ b/tests/nvme/006 @@ -10,8 +10,8 @@ DESCRIPTION="create an NVMeOF target with a block device-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/007 b/tests/nvme/007 index 58f4bf8..0902745 100755 --- a/tests/nvme/007 +++ b/tests/nvme/007 @@ -10,7 +10,7 @@ DESCRIPTION="create an NVMeOF target with a file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules nvme-loop nvmet && _have_configfs + _nvme_requires } test() { diff --git a/tests/nvme/008 b/tests/nvme/008 index 71ff4d9..f19de17 100755 --- a/tests/nvme/008 +++ b/tests/nvme/008 @@ -10,8 +10,8 @@ DESCRIPTION="create an NVMeOF host with a block device-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/009 b/tests/nvme/009 index 25c7da2..4afbe62 100755 --- a/tests/nvme/009 +++ b/tests/nvme/009 @@ -10,7 +10,7 @@ DESCRIPTION="create an NVMeOF host with a file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules nvme-loop nvmet && _have_configfs + _nvme_requires } test() { diff --git a/tests/nvme/010 b/tests/nvme/010 index 2ed0f48..53b9748 100755 --- a/tests/nvme/010 +++ b/tests/nvme/010 @@ -10,8 +10,8 @@ DESCRIPTION="run data verification fio job on NVMeOF block device-backed ns" TIMED=1 requires() { - _have_program nvme && _have_fio && \ - _have_modules loop nvme-loop nvmet && _have_configfs + _nvme_requires + _have_fio _have_modules loop } test() { diff --git a/tests/nvme/011 b/tests/nvme/011 index 974b337..a54583d 100755 --- a/tests/nvme/011 +++ b/tests/nvme/011 @@ -10,8 +10,8 @@ DESCRIPTION="run data verification fio job on NVMeOF file-backed ns" TIMED=1 requires() { - _have_program nvme && _have_fio && _have_configfs && \ - _have_modules nvme-loop nvmet + _nvme_requires + _have_fio } test() { diff --git a/tests/nvme/012 b/tests/nvme/012 index 27981e9..0049c3d 100755 --- a/tests/nvme/012 +++ b/tests/nvme/012 @@ -10,8 +10,9 @@ DESCRIPTION="run mkfs and data verification fio job on NVMeOF block device-backe TIMED=1 requires() { - _have_program nvme && _have_program mkfs.xfs && _have_program fio && \ - _have_modules loop nvme-loop nvmet && _have_configfs + _nvme_requires + _have_program mkfs.xfs && _have_program fio && \ + _have_modules loop } test() { diff --git a/tests/nvme/013 b/tests/nvme/013 index af5f373..622706e 100755 --- a/tests/nvme/013 +++ b/tests/nvme/013 @@ -10,8 +10,8 @@ DESCRIPTION="run mkfs and data verification fio job on NVMeOF file-backed ns" TIMED=1 requires() { - _have_program nvme && _have_program mkfs.xfs && _have_fio && \ - _have_modules nvme-loop nvmet && _have_configfs + _nvme_requires + _have_program mkfs.xfs && _have_fio } test() { diff --git a/tests/nvme/014 b/tests/nvme/014 index c255d5f..9517230 100755 --- a/tests/nvme/014 +++ b/tests/nvme/014 @@ -10,8 +10,8 @@ DESCRIPTION="flush a NVMeOF block device-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/015 b/tests/nvme/015 index a8497a2..40b8509 100755 --- a/tests/nvme/015 +++ b/tests/nvme/015 @@ -10,7 +10,8 @@ DESCRIPTION="unit test for NVMe flush for file backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/016 b/tests/nvme/016 index f1e383c..e1bad2f 100755 --- a/tests/nvme/016 +++ b/tests/nvme/016 @@ -9,7 +9,7 @@ DESCRIPTION="create/delete many NVMeOF block device-backed ns and test discovery" requires() { - _have_program nvme && _have_modules nvme-loop nvmet && _have_configfs + _nvme_requires } test() { diff --git a/tests/nvme/017 b/tests/nvme/017 index 6787b5c..2e6d649 100755 --- a/tests/nvme/017 +++ b/tests/nvme/017 @@ -9,7 +9,7 @@ DESCRIPTION="create/delete many file-ns and test discovery" requires() { - _have_program nvme && _have_modules nvme-loop nvmet && _have_configfs + _nvme_requires } test() { diff --git a/tests/nvme/018 b/tests/nvme/018 index 67d89a6..e396137 100755 --- a/tests/nvme/018 +++ b/tests/nvme/018 @@ -11,8 +11,8 @@ DESCRIPTION="unit test NVMe-oF out of range access on a file backend" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/019 b/tests/nvme/019 index a8b0204..86a2a29 100755 --- a/tests/nvme/019 +++ b/tests/nvme/019 @@ -10,8 +10,8 @@ DESCRIPTION="test NVMe DSM Discard command on NVMeOF block-device ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/020 b/tests/nvme/020 index b480ee1..ccadec6 100755 --- a/tests/nvme/020 +++ b/tests/nvme/020 @@ -10,7 +10,7 @@ DESCRIPTION="test NVMe DSM Discard command on NVMeOF file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules nvme-loop nvmet && _have_configfs + _nvme_requires } test() { diff --git a/tests/nvme/021 b/tests/nvme/021 index bbee54d..bbcb9d5 100755 --- a/tests/nvme/021 +++ b/tests/nvme/021 @@ -10,8 +10,8 @@ DESCRIPTION="test NVMe list command on NVMeOF file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/022 b/tests/nvme/022 index 9ba07c1..452e7b3 100755 --- a/tests/nvme/022 +++ b/tests/nvme/022 @@ -10,8 +10,8 @@ DESCRIPTION="test NVMe reset command on NVMeOF file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/023 b/tests/nvme/023 index ed2a5ad..2714571 100755 --- a/tests/nvme/023 +++ b/tests/nvme/023 @@ -10,8 +10,8 @@ DESCRIPTION="test NVMe smart-log command on NVMeOF block-device ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/024 b/tests/nvme/024 index 5385809..1f87bd1 100755 --- a/tests/nvme/024 +++ b/tests/nvme/024 @@ -10,8 +10,8 @@ DESCRIPTION="test NVMe smart-log command on NVMeOF file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/025 b/tests/nvme/025 index 0039fef..1b9e333 100755 --- a/tests/nvme/025 +++ b/tests/nvme/025 @@ -10,8 +10,8 @@ DESCRIPTION="test NVMe effects-log command on NVMeOF file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/026 b/tests/nvme/026 index 7e89d84..21a265a 100755 --- a/tests/nvme/026 +++ b/tests/nvme/026 @@ -10,8 +10,8 @@ DESCRIPTION="test NVMe ns-descs command on NVMeOF file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/027 b/tests/nvme/027 index 4d293be..d7d3379 100755 --- a/tests/nvme/027 +++ b/tests/nvme/027 @@ -10,8 +10,8 @@ DESCRIPTION="test NVMe ns-rescan command on NVMeOF file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/028 b/tests/nvme/028 index 1280107..1643857 100755 --- a/tests/nvme/028 +++ b/tests/nvme/028 @@ -10,8 +10,8 @@ DESCRIPTION="test NVMe list-subsys command on NVMeOF file-backed ns" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/029 b/tests/nvme/029 index 65eb400..9f43728 100755 --- a/tests/nvme/029 +++ b/tests/nvme/029 @@ -11,8 +11,8 @@ DESCRIPTION="test userspace IO via nvme-cli read/write interface" QUICK=1 requires() { - _have_program nvme && _have_modules loop nvme-loop nvmet && \ - _have_configfs + _nvme_requires + _have_modules loop } test_user_io() diff --git a/tests/nvme/030 b/tests/nvme/030 index 94020f4..7156cad 100755 --- a/tests/nvme/030 +++ b/tests/nvme/030 @@ -10,9 +10,8 @@ DESCRIPTION="ensure the discovery generation counter is updated appropriately" QUICK=1 requires() { - _have_program nvme && - _have_modules loop nvme-loop nvmet && - _have_configfs + _nvme_requires + _have_modules loop } diff --git a/tests/nvme/031 b/tests/nvme/031 index 892f20b..7e7ee73 100755 --- a/tests/nvme/031 +++ b/tests/nvme/031 @@ -18,9 +18,8 @@ DESCRIPTION="test deletion of NVMeOF controllers immediately after setup" QUICK=1 requires() { - _have_program nvme && - _have_modules loop nvme-loop nvmet && - _have_configfs + _nvme_requires + _have_modules loop } test() { diff --git a/tests/nvme/032 b/tests/nvme/032 index 0d0d53b..017d4a3 100755 --- a/tests/nvme/032 +++ b/tests/nvme/032 @@ -11,11 +11,15 @@ . tests/nvme/rc +#restrict test to nvme-pci only +nvme_trtype=pci + DESCRIPTION="test nvme pci adapter rescan/reset/remove during I/O" QUICK=1 CAN_BE_ZONED=1 requires() { + _nvme_requires _have_fio } diff --git a/tests/nvme/rc b/tests/nvme/rc index 6ffa971..320aa4b 100644 --- a/tests/nvme/rc +++ b/tests/nvme/rc @@ -6,6 +6,25 @@ . common/rc +nvme_trtype=${nvme_trtype:-"loop"} + +_nvme_requires() { + _have_program nvme + case ${nvme_trtype} in + loop) + _have_modules nvmet nvme-core nvme-loop + _have_configfs + ;; + pci) + _have_modules nvme nvme-core + ;; + *) + SKIP_REASON="unsupported nvme_trtype=${nvme_trtype}" + return 1 + esac + return 0 +} + group_requires() { _have_root }