Re: [PATCH blktests V3] tests/srp: fix module loading issue during srp tests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux