[PATCH blktests v3 0/3] Introduce nvmet target setup/cleanup helpers

From: Daniel Wagner
Date: Tue Aug 22 2023 - 04:38:09 EST


Addressed Sagi's feedback and dropped the explicit --blkdev=device argument from
the _nvmet_target_setup calls, as it is the default.



original cover letter:

Introduce helpers to setup nvmet targets. This is spin off from the refactoring
patches and the allowed_host patches [1].

Sagi suggested to record all resources allocated by nvmet_target_setup and then
later clean them up in nvmet_target_cleanup. I opted to figure out in
nvmet_target_cleanup what was allocated via the newly introdcuded _get_nvmet_ports
helper. The reason being, Hannes told me offline that he would like to add ANA
tests which will add some more ports to the subsystem. I hope with this
the code is more future proof.

BTW, while looking at this I saw that the passthru code is using the awkward
return value port when calling nvmet_passthru_target_setup. It seems some
more refactoring is in order...

[1] https://lore.kernel.org/linux-nvme/5h333eqhtw252sjw6axjewlb5bbb5ze7awekczxe3kie2lnhw6@manyer42khct/


changes

v3:
- rebased/retested
- use the default with _nvmet_target_setup

v2:
- drop local subsys variable in passthru tests
- do not use port as handle in passthru tests
- free port after unregistering from subsys
- https://lore.kernel.org/linux-nvme/20230818141537.22332-1-dwagner@xxxxxxx/

v1:
- https://lore.kernel.org/linux-nvme/20230818095744.24619-1-dwagner@xxxxxxx/

Daniel Wagner (3):
nvme/{033,034,035,036}: use default subsysnqn variable directly
nvme/{033,034,035,036,37}: drop port handle between passthru target
setup and cleanup
nvme: introduce nvmet_target_{setup/cleanup} common code

tests/nvme/003 | 14 ++-----
tests/nvme/004 | 21 ++---------
tests/nvme/005 | 20 +---------
tests/nvme/006 | 19 +---------
tests/nvme/007 | 14 +------
tests/nvme/008 | 21 +----------
tests/nvme/009 | 16 +-------
tests/nvme/010 | 21 +----------
tests/nvme/011 | 16 +-------
tests/nvme/012 | 21 +----------
tests/nvme/013 | 16 +-------
tests/nvme/014 | 21 +----------
tests/nvme/015 | 16 +-------
tests/nvme/018 | 16 +-------
tests/nvme/019 | 21 +----------
tests/nvme/020 | 16 +-------
tests/nvme/021 | 16 +-------
tests/nvme/022 | 16 +-------
tests/nvme/023 | 21 +----------
tests/nvme/024 | 16 +-------
tests/nvme/025 | 16 +-------
tests/nvme/026 | 16 +-------
tests/nvme/027 | 17 ++-------
tests/nvme/028 | 17 ++-------
tests/nvme/029 | 21 +----------
tests/nvme/033 | 10 ++---
tests/nvme/034 | 10 ++---
tests/nvme/035 | 10 ++---
tests/nvme/036 | 12 +++---
tests/nvme/037 | 5 +--
tests/nvme/040 | 19 +---------
tests/nvme/041 | 18 +--------
tests/nvme/042 | 17 +--------
tests/nvme/043 | 17 +--------
tests/nvme/044 | 19 ++--------
tests/nvme/045 | 18 ++-------
tests/nvme/047 | 21 +----------
tests/nvme/048 | 17 +--------
tests/nvme/rc | 99 +++++++++++++++++++++++++++++++++++++++++++++++---
39 files changed, 184 insertions(+), 553 deletions(-)

--
2.41.0