From: Shin'ichiro Kawasaki <shinichiro.kawasaki@xxxxxxx> In the past, there was an issue related to scsi_debug module unload [1]. At that time, it was suggested to modify blktests not to rely on module load and unload. Based on that discussion, blktests was modified not to load or unload null_blk driver [2][3]. As of today, a number of test cases with null_blk can be run with built-in null_blk. This series introduces similar support for built-in scsi_debug. This patch adds a new helper function _configure_scsi_debug which can set up scsi_debug device without module load and unload. Also it enables 5 test cases to run with built- in scsi_debug. The first patch in this series fixes a minor issue found during this work. Next two patches modify common/scsi_debug functions as preparation. The 4th patch introduces the new function _configure_scsi_debug. Following 5 patches modify the 5 test cases so that they can run with built-in scsi debug. Of note is that still srp test group and 9 test cases in other test groups are left to require loadable scsi_debug. The srp test group and 8 of the 9 test cases can not be run with built-in scsi_debug because the parameters they set are read-only on sysfs. The other one test case scsi/007 has other failure symptom now, so I leave it untouched at this moment. [1] https://lore.kernel.org/linux-block/bc0b2c10-10e6-a1d9-4139-ac93ad3512b2@xxxxxxxxxxxx/ [2] https://lore.kernel.org/linux-block/20220601064837.3473709-1-hch@xxxxxx/ [3] https://lore.kernel.org/linux-block/20220607124739.1259977-1-hch@xxxxxx/ Changes from v1: * 4th patch: improved to restore scsi_debug parameters modified during test * Squashed last 5 patches into 2 patches as suggested * Added Reviewed-by tags * Noted srp test group in the last paragraph of the cover letter Shin'ichiro Kawasaki (6): common/rc: skip module file check if modules path does not exist common/scsi_debug, tests/*: re-define _have_scsi_debug common/scsi_debug: factor out _setup_scsi_debug_vars common/scsi_debug: introduce _configure_scsi_debug scsi/{004,005}: allow to run with built-in scsi_debug block/{001,002,027}: allow to run with built-in scsi_debug and sd_mod common/rc | 1 + common/scsi_debug | 138 ++++++++++++++++++++++++++++++++++++++++++---- tests/block/001 | 4 +- tests/block/002 | 5 +- tests/block/009 | 3 +- tests/block/025 | 2 +- tests/block/027 | 6 +- tests/block/028 | 2 +- tests/block/032 | 3 +- tests/loop/004 | 5 +- tests/scsi/004 | 2 +- tests/scsi/005 | 5 +- tests/scsi/007 | 2 +- tests/zbd/008 | 5 +- tests/zbd/009 | 2 +- tests/zbd/010 | 2 +- 16 files changed, 156 insertions(+), 31 deletions(-) -- 2.40.0