Greeting, FYI, we noticed the following commit (built with gcc-9): commit: 1d11c1b7f9ff28196d66d995f11fcf3101301fe9 ("RDMA/rxe: Remove unneeded RXE_POOL_ATOMIC flag") https://git.kernel.org/cgit/linux/kernel/git/rdma/rdma.git for-next in testcase: blktests version: blktests-x86_64-a210761-1_20210124 with following parameters: test: srp-group-00 ucode: 0xe2 on test machine: 4 threads Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz with 32G memory caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace): If you fix the issue, kindly add following tag Reported-by: kernel test robot [ 24.234413] BUG: sleeping function called from invalid context at drivers/infiniband/sw/rxe/rxe_pool.c:349 [ 24.244075] in_atomic(): 1, irqs_disabled(): 1, non_block: 0, pid: 929, name: check [ 24.251738] CPU: 0 PID: 929 Comm: check Tainted: G I 5.11.0-rc2-g1d11c1b7f9ff #1 [ 24.260443] Hardware name: Dell Inc. OptiPlex 7040/0Y7WYT, BIOS 1.1.1 10/07/2015 [ 24.267846] Call Trace: [ 24.270297] dump_stack (kbuild/src/consumer/lib/dump_stack.c:122) [ 24.273621] ___might_sleep.cold (kbuild/src/consumer/kernel/sched/core.c:7902 kbuild/src/consumer/kernel/sched/core.c:7859) [ 24.277729] rxe_add_to_pool (kbuild/src/consumer/drivers/infiniband/sw/rxe/rxe_pool.c:349 (discriminator 1)) rdma_rxe [ 24.282546] rxe_create_ah (kbuild/src/consumer/drivers/infiniband/sw/rxe/rxe_verbs.c:173) rdma_rxe [ 24.287090] _rdma_create_ah (kbuild/src/consumer/drivers/infiniband/core/verbs.c:539) ib_core [ 24.291903] rdma_create_ah (kbuild/src/consumer/drivers/infiniband/core/verbs.c:579) ib_core [ 24.296544] cm_alloc_msg (kbuild/src/consumer/drivers/infiniband/core/cm.c:339) ib_cm [ 24.300823] ib_send_cm_req (kbuild/src/consumer/drivers/infiniband/core/cm.c:1556 kbuild/src/consumer/drivers/infiniband/core/cm.c:1500) ib_cm [ 24.305361] rdma_connect_locked (kbuild/src/consumer/drivers/infiniband/core/cma.c:4015 kbuild/src/consumer/drivers/infiniband/core/cma.c:4096) rdma_cm [ 24.310520] rdma_connect (kbuild/src/consumer/drivers/infiniband/core/cma.c:4130) rdma_cm [ 24.314883] srp_send_req (kbuild/src/consumer/drivers/infiniband/ulp/srp/ib_srp.c:916) ib_srp [ 24.319336] ? wait_for_completion_interruptible (kbuild/src/consumer/kernel/sched/completion.c:89 kbuild/src/consumer/kernel/sched/completion.c:106 kbuild/src/consumer/kernel/sched/completion.c:117 kbuild/src/consumer/kernel/sched/completion.c:206) [ 24.324917] srp_connect_ch (kbuild/src/consumer/drivers/infiniband/ulp/srp/ib_srp.c:1131) ib_srp [ 24.329454] srp_create_target (kbuild/src/consumer/drivers/infiniband/ulp/srp/ib_srp.c:3803) ib_srp [ 24.334352] ? __handle_mm_fault (kbuild/src/consumer/mm/memory.c:4405 kbuild/src/consumer/mm/memory.c:4522) [ 24.338655] ? kernfs_fop_write (kbuild/src/consumer/fs/kernfs/file.c:319) [ 24.342755] ? srp_alloc_iu+0x180/0x180 ib_srp [ 24.349028] kernfs_fop_write (kbuild/src/consumer/fs/kernfs/file.c:319) [ 24.352953] vfs_write (kbuild/src/consumer/fs/read_write.c:603) [ 24.356272] ksys_write (kbuild/src/consumer/fs/read_write.c:658) [ 24.359590] do_syscall_64 (kbuild/src/consumer/arch/x86/entry/common.c:46) [ 24.363168] entry_SYSCALL_64_after_hwframe (kbuild/src/consumer/arch/x86/entry/entry_64.S:127) [ 24.368224] RIP: 0033:0x7f5670373504 [ 24.371803] Code: 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b3 0f 1f 80 00 00 00 00 48 8d 05 f9 61 0d 00 8b 00 85 c0 75 13 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 54 c3 0f 1f 00 41 54 49 89 d4 55 48 89 f5 53 All code ======== 0: 00 f7 add %dh,%bh 2: d8 64 89 02 fsubs 0x2(%rcx,%rcx,4) 6: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax d: eb b3 jmp 0xffffffffffffffc2 f: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) 16: 48 8d 05 f9 61 0d 00 lea 0xd61f9(%rip),%rax # 0xd6216 1d: 8b 00 mov (%rax),%eax 1f: 85 c0 test %eax,%eax 21: 75 13 jne 0x36 23: b8 01 00 00 00 mov $0x1,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 54 ja 0x86 32: c3 retq 33: 0f 1f 00 nopl (%rax) 36: 41 54 push %r12 38: 49 89 d4 mov %rdx,%r12 3b: 55 push %rbp 3c: 48 89 f5 mov %rsi,%rbp 3f: 53 push %rbx Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 54 ja 0x5c 8: c3 retq 9: 0f 1f 00 nopl (%rax) c: 41 54 push %r12 e: 49 89 d4 mov %rdx,%r12 11: 55 push %rbp 12: 48 89 f5 mov %rsi,%rbp 15: 53 push %rbx [ 24.390596] RSP: 002b:00007ffcb93d3438 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 [ 24.398172] RAX: ffffffffffffffda RBX: 000000000000007f RCX: 00007f5670373504 [ 24.405313] RDX: 000000000000007f RSI: 0000559241e2fff0 RDI: 0000000000000001 [ 24.412456] RBP: 0000559241e2fff0 R08: 000000000000000a R09: 00007f5670403e80 [ 24.419599] R10: 000000000000000a R11: 0000000000000246 R12: 00007f5670445760 [ 24.426741] R13: 000000000000007f R14: 00007f5670440760 R15: 000000000000007f [ 24.434961] ib_srpt Received SRP_LOGIN_REQ with i_port_id fe80:0000:0000:0000:6600:6aff:fe30:91ac, t_port_id 6600:6aff:fe30:91ac:6600:6aff:fe30:91ac and it_iu_len 8260 on port 1 (guid=fe80:0000:0000:0000:6600:6aff:fe30:91ac); pkey 0xffff [ 24.456074] ib_srpt:srpt_cm_req_recv: ib_srpt imm_data_offset = 68 [ 24.463272] ib_srpt:srpt_create_ch_ib: ib_srpt srpt_create_ch_ib: max_cqe= 8191 max_sge= 32 sq_size = 4096 ch= 00000000892a9c59 [ 24.474782] ib_srpt:srpt_cm_req_recv: ib_srpt registering src addr 192.168.3.94 or i_port_id 0xfe8000000000000066006afffe3091ac [ 24.486443] ib_srpt:srpt_cm_req_recv: ib_srpt Establish connection sess=0000000040f58be7 name=192.168.3.94 ch=00000000892a9c59 [ 24.497985] ib_srp:srp_max_it_iu_len: ib_srp: max_iu_len = 8260 [ 24.503932] scsi host5: ib_srp: using immediate data [ 24.509187] ib_srpt:srpt_zerolength_write: ib_srpt 192.168.3.94-18: queued zerolength write [ 24.509449] ib_srpt Received SRP_LOGIN_REQ with i_port_id fe80:0000:0000:0000:6600:6aff:fe30:91ac, t_port_id 6600:6aff:fe30:91ac:6600:6aff:fe30:91ac and it_iu_len 8260 on port 1 (guid=fe80:0000:0000:0000:6600:6aff:fe30:91ac); pkey 0xffff [ 24.517625] ib_srpt:srpt_zerolength_write_done: ib_srpt 192.168.3.94-18 wc->status 0 [ 24.538717] ib_srpt:srpt_cm_req_recv: ib_srpt imm_data_offset = 68 [ 24.539464] ib_srpt:srpt_create_ch_ib: ib_srpt srpt_create_ch_ib: max_cqe= 8191 max_sge= 32 sq_size = 4096 ch= 000000006275cf0d [ 24.564205] ib_srpt:srpt_cm_req_recv: ib_srpt registering src addr 192.168.3.94 or i_port_id 0xfe8000000000000066006afffe3091ac [ 24.575787] ib_srpt:srpt_cm_req_recv: ib_srpt Establish connection sess=0000000025fe01e6 name=192.168.3.94 ch=000000006275cf0d [ 24.587281] ib_srp:srp_max_it_iu_len: ib_srp: max_iu_len = 8260 [ 24.593231] scsi host5: ib_srp: using immediate data [ 24.593235] ib_srpt:srpt_zerolength_write: ib_srpt 192.168.3.94-20: queued zerolength write [ 24.598619] ib_srpt Received SRP_LOGIN_REQ with i_port_id fe80:0000:0000:0000:6600:6aff:fe30:91ac, t_port_id 6600:6aff:fe30:91ac:6600:6aff:fe30:91ac and it_iu_len 8260 on port 1 (guid=fe80:0000:0000:0000:6600:6aff:fe30:91ac); pkey 0xffff [ 24.606577] ib_srpt:srpt_zerolength_write_done: ib_srpt 192.168.3.94-20 wc->status 0 [ 24.627729] ib_srpt:srpt_cm_req_recv: ib_srpt imm_data_offset = 68 [ 24.642366] ib_srpt:srpt_create_ch_ib: ib_srpt srpt_create_ch_ib: max_cqe= 8191 max_sge= 32 sq_size = 4096 ch= 000000001c1546f0 [ 24.653950] ib_srpt:srpt_cm_req_recv: ib_srpt registering src addr 192.168.3.94 or i_port_id 0xfe8000000000000066006afffe3091ac [ 24.665493] ib_srpt:srpt_cm_req_recv: ib_srpt Establish connection sess=000000005346d2d5 name=192.168.3.94 ch=000000001c1546f0 [ 24.676969] ib_srp:srp_max_it_iu_len: ib_srp: max_iu_len = 8260 [ 24.682911] scsi host5: ib_srp: using immediate data [ 24.688097] ib_srpt:srpt_zerolength_write: ib_srpt 192.168.3.94-22: queued zerolength write [ 24.688356] ib_srpt Received SRP_LOGIN_REQ with i_port_id fe80:0000:0000:0000:6600:6aff:fe30:91ac, t_port_id 6600:6aff:fe30:91ac:6600:6aff:fe30:91ac and it_iu_len 8260 on port 1 (guid=fe80:0000:0000:0000:6600:6aff:fe30:91ac); pkey 0xffff [ 24.696490] ib_srpt:srpt_zerolength_write_done: ib_srpt 192.168.3.94-22 wc->status 0 [ 24.725397] ib_srpt:srpt_cm_req_recv: ib_srpt imm_data_offset = 68 [ 24.732378] ib_srpt:srpt_create_ch_ib: ib_srpt srpt_create_ch_ib: max_cqe= 8191 max_sge= 32 sq_size = 4096 ch= 000000002d1e9198 [ 24.743908] ib_srpt:srpt_cm_req_recv: ib_srpt registering src addr 192.168.3.94 or i_port_id 0xfe8000000000000066006afffe3091ac [ 24.755417] ib_srpt:srpt_cm_req_recv: ib_srpt Establish connection sess=0000000014bf46d3 name=192.168.3.94 ch=000000002d1e9198 [ 24.766924] ib_srp:srp_max_it_iu_len: ib_srp: max_iu_len = 8260 [ 24.772881] scsi host5: ib_srp: using immediate data [ 24.778163] ib_srpt:srpt_zerolength_write: ib_srpt 192.168.3.94-24: queued zerolength write [ 24.786611] ib_srpt:srpt_zerolength_write_done: ib_srpt 192.168.3.94-24 wc->status 0 [ 24.786611] scsi host5: SRP.T10:66006AFFFE3091AC [ 24.799331] scsi 5:0:0:0: Direct-Access LIO-ORG IBLOCK 4.0 PQ: 0 ANSI: 5 [ 24.807601] scsi 5:0:0:0: alua: supports implicit and explicit TPGS [ 24.813882] scsi 5:0:0:0: alua: device naa.60014056e756c6c62300000000000000 port group 0 rel port 1 [ 24.823098] sd 5:0:0:0: Warning! Received an indication that the LUN assignments on this target have changed. The Linux SCSI layer does not automatical [ 24.836901] sd 5:0:0:0: Attached scsi generic sg3 type 0 [ 24.840545] sd 5:0:0:0: alua: transition timeout set to 60 seconds [ 24.840707] sd 5:0:0:0: [sdd] 65536 512-byte logical blocks: (33.6 MB/32.0 MiB) [ 24.840726] sd 5:0:0:0: [sdd] Write Protect is off [ 24.840728] sd 5:0:0:0: [sdd] Mode Sense: 43 00 00 08 [ 24.840761] sd 5:0:0:0: [sdd] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA [ 24.840768] srpt/192.168.3.94: Unsupported SCSI Opcode 0xa3, sending CHECK_CONDITION. [ 24.840794] sd 5:0:0:0: [sdd] Optimal transfer size 126976 bytes [ 24.843401] sd 5:0:0:0: [sdd] Attached SCSI disk [ 24.848426] sd 5:0:0:0: alua: port group 00 state A non-preferred supports TOlUSNA [ 24.910612] scsi 5:0:0:2: Direct-Access LIO-ORG IBLOCK 4.0 PQ: 0 ANSI: 5 [ 24.918796] scsi 5:0:0:2: alua: supports implicit and explicit TPGS [ 24.922758] Unknown VPD Code: 0xc9 Code starting with the faulting instruction =========================================== To reproduce: git clone https://github.com/intel/lkp-tests.git cd lkp-tests bin/lkp install job.yaml # job file is attached in this email bin/lkp run job.yaml Thanks, Oliver Sang