Re: blktests: running nvme and srp tests with real RDMA hardware

Hannes Reinecke
2023-10-24T06:51:52Z

On 10/24/23 07:55, Chaitanya Kulkarni wrote:
> On 10/23/23 22:43, Hannes Reinecke wrote:
>> On 10/24/23 04:59, Shinichiro Kawasaki wrote:
>>> Hello blktests users,
>>>
>>> As of today, software RDMA driver "siw" or "rdma_rxe" is used to run
>>> "nvme"
>>> group with nvme_trtype=rdma or "srp" (scsi rdma protocol) group. Now
>>> it is
>>> suggested to run the test groups with real RDMA hardware to run tests in
>>> more realistic conditions. A GitHub pull request is under review to
>>> support
>>> it [1]. If you are interested in, please take a look and comment.
>>>
>>> [1] https://github.com/osandov/blktests/pull/86
>>
>> Just commented on it. What we really need is the functionality to run
>> against pre-configured controllers (ie specify the controller NQN and
>> NSID and do not call into nvmetcli); when running on real HW we
>> typically cannot control the target, so we need to be able to specify
>> a preconfigured namespace.
>>
>> Cheers,
>>
>> Hannes
>
> What format you think use to accept the pre configured namespace ?
> thinking out loudly Can relay and we use nvmetcli config file somehow
> for local loop back setup ?
>
Ideally I would hide it behind the call to '_setup_nvmet' /
'_nvmet_target_setup' / '_nvmet_target_cleanup'.
We already have 'def_subsysnqn', which should be set to the
pre-provisioned NQN. We clearly need a 'def_nsid', but that
should be easily done.

Biggest problem here will be the 'out' files. Most of them record the
default NQN, so if we allow to change that the tests will break.
How can we abstract away from that?

Maybe it's a good exercise even with the current codebase; just
set 'def_subsysnqn' to something else and watch what breaks ...

Cheers,

Hannes
--
Dr. Hannes Reinecke Kernel Storage Architect
hare@suse.de +49 911 74053 688
SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), Geschäftsführer: Ivo Totev, Andrew
Myers, Andrew McDonald, Martje Boudien Moerman