On Mon, Oct 25, 2021 at 5:22 AM Bart Van Assche <bvanassche@xxxxxxx> wrote: > > On 10/24/21 05:42, Yi Zhang wrote: > > The ib_isert/ib_srpt modules will be automatically loaded after the first > > time rdma_rxe/siw setup, which will lead srp tests fail. > > > > $ modprobe rdma_rxe > > $ echo eno1 >/sys/module/rdma_rxe/parameters/add > > $ lsmod | grep -E "ib_srpt|iscsi_target_mod|ib_isert" > > ib_srpt 167936 0 > > ib_isert 139264 0 > > iscsi_target_mod 843776 1 ib_isert > > target_core_mod 1069056 3 iscsi_target_mod,ib_srpt,ib_isert > > rdma_cm 315392 5 rpcrdma,ib_srpt,ib_iser,ib_isert,rdma_ucm > > ib_cm 344064 2 rdma_cm,ib_srpt > > ib_core 1101824 10 rdma_cm,rdma_rxe,rpcrdma,ib_srpt,iw_cm,ib_iser,ib_isert,rdma_ucm,ib_uverbs,ib_cm > > > > $ ./check srp/001 > > srp/001 (Create and remove LUNs) [failed] > > runtime ... 3.675s > > --- tests/srp/001.out 2021-10-13 01:18:50.846740093 -0400 > > +++ /root/blktests/results/nodev/srp/001.out.bad 2021-10-14 03:24:18.593852208 -0400 > > @@ -1,3 +1 @@ > > -Configured SRP target driver > > -count_luns(): 3 <> 3 > > -Passed > > +insmod: ERROR: could not insert module /lib/modules/5.15.0-rc5.fix+/kernel/drivers/infiniband/ulp/srpt/ib_srpt.ko: File exists > > modprobe: FATAL: Module iscsi_target_mod is in use. > > > > Signed-off-by: Yi Zhang <yi.zhang@xxxxxxxxxx> > > --- > > tests/srp/rc | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/tests/srp/rc b/tests/srp/rc > > index 7239d87..b3dfd4d 100755 > > --- a/tests/srp/rc > > +++ b/tests/srp/rc > > @@ -497,7 +497,7 @@ start_lio_srpt() { > > if modinfo ib_srpt | grep -q '^parm:[[:blank:]]*rdma_cm_port:'; then > > opts+=("rdma_cm_port=${srp_rdma_cm_port}") > > fi > > - insmod "/lib/modules/$(uname -r)/kernel/drivers/infiniband/ulp/srpt/ib_srpt."* "${opts[@]}" || return $? > > + unload_module ib_srpt && modprobe ib_srpt "${opts[@]}" || return $? > > i=0 > > The "&&" above seems wrong to me. It is not guaranteed that the ib_srpt > kernel mode has already been loaded before this code runs. I propose to > use the following code instead: > > unload_module ib_srpt > modprobe ib_srpt "${opts[@]}" || return $? Thanks Bart, send v4 for this change. > > Thanks, > > Bart. > -- Best Regards, Yi Zhang