Hi Bernard, If I try to associate the ib_srpt driver with the siw driver the complaint shown below appears on the console. In iw_cm_listen() I found the following: [ ... ] spin_lock_irqsave(&cm_id_priv->lock, flags); switch (cm_id_priv->state) { case IW_CM_STATE_IDLE: cm_id_priv->state = IW_CM_STATE_LISTEN; spin_unlock_irqrestore(&cm_id_priv->lock, flags); ret = iw_cm_map(cm_id, false); if (!ret) ret = cm_id->device->ops.iw_create_listen(cm_id, backlog); if (ret) cm_id_priv->state = IW_CM_STATE_IDLE; spin_lock_irqsave(&cm_id_priv->lock, flags); break; default: ret = -EINVAL; } spin_unlock_irqrestore(&cm_id_priv->lock, flags); [ ... ] So it surprises me that siw_listen_address() calls a function that can sleep. Do you think this is a correct analysis of the call trace shown below? Thanks, Bart. Target_Core_ConfigFS: REGISTER -> Allocated Fabric: srpt iwpm_register_pid: Unable to send a nlmsg (client = 2) BUG: sleeping function called from invalid context at mm/slab.h:501 in_atomic(): 1, irqs_disabled(): 0, pid: 1097, name: restart-lio-srp 4 locks held by restart-lio-srp/1097: #0: 0000000083aba319 (sb_writers#11){.+.+}, at: vfs_write+0x24a/0x2c0 #1: 00000000dc6d2df5 (&buffer->mutex){+.+.}, at: configfs_write_file+0x4e/0x1d0 [configfs] #2: 000000004db62204 (lock#7){+.+.}, at: rdma_listen+0x34c/0x450 [rdma_cm] #3: 00000000ca45d89f (&ndev->lock){++--}, at: siw_create_listen+0x1d1/0x8b0 [siw] Preemption disabled at: [<ffffffffa0db6071>] siw_create_listen+0x1d1/0x8b0 [siw] CPU: 0 PID: 1097 Comm: restart-lio-srp Not tainted 5.3.0-rc5-dbg+ #2 Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 Call Trace: dump_stack+0x8a/0xd6 ___might_sleep.cold+0x128/0x139 __might_sleep+0x76/0xe0 kmem_cache_alloc+0x2b4/0x3a0 sock_alloc_inode+0x20/0xf0 alloc_inode+0x34/0xe0 new_inode_pseudo+0x17/0x90 sock_alloc+0x2f/0x110 __sock_create+0x61/0x360 sock_create+0x5f/0x70 siw_listen_address+0xbe/0x630 [siw] siw_create_listen+0x2f5/0x8b0 [siw] iw_cm_listen+0xd9/0x110 [iw_cm] rdma_listen+0x32e/0x450 [rdma_cm] cma_listen_on_dev+0x276/0x290 [rdma_cm] rdma_listen+0x3c7/0x450 [rdma_cm] srpt_create_rdma_id+0xc8/0x120 [ib_srpt] srpt_rdma_cm_port_store+0x1a0/0x1f0 [ib_srpt] configfs_write_file+0x15c/0x1d0 [configfs] __vfs_write+0x4c/0x90 vfs_write+0x145/0x2c0 ksys_write+0xd7/0x180 __x64_sys_write+0x47/0x50 do_syscall_64+0x75/0x280 entry_SYSCALL_64_after_hwframe+0x49/0xbe [...] siw: device registration error -23