lo speed is unknown, defaulting to 1000
lo speed is unknown, defaulting to 1000
lo speed is unknown, defaulting to 1000
======================================================
WARNING: possible circular locking dependency detected
6.14.0-syzkaller-13344-ga9843689e2de #0 Not tainted
------------------------------------------------------
syz.4.507/7332 is trying to acquire lock:
ffff88805f9d9bd8 (sk_lock-AF_INET){+.+.}-{0:0}, at: lock_sock include/net/sock.h:1615 [inline]
ffff88805f9d9bd8 (sk_lock-AF_INET){+.+.}-{0:0}, at: sock_set_reuseaddr+0x17/0x60 net/core/sock.c:788

but task is already holding lock:
ffffffff8fe84f28 (lock#7){+.+.}-{4:4}, at: cma_add_one+0x6c1/0xce0 drivers/infiniband/core/cma.c:5384

which lock already depends on the new lock.


the existing dependency chain (in reverse order) is:

-> #3 (lock#7){+.+.}-{4:4}:
       lock_acquire+0x116/0x2f0 kernel/locking/lockdep.c:5866
       __mutex_lock_common kernel/locking/mutex.c:601 [inline]
       __mutex_lock+0x1a5/0x10c0 kernel/locking/mutex.c:746
       cma_init+0x1e/0x140 drivers/infiniband/core/cma.c:5468
       do_one_initcall+0x24a/0x940 init/main.c:1257
       do_initcall_level+0x157/0x210 init/main.c:1319
       do_initcalls+0x71/0xd0 init/main.c:1335
       kernel_init_freeable+0x432/0x5d0 init/main.c:1567
       kernel_init+0x1d/0x2b0 init/main.c:1457
       ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:153
       ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

-> #2 (rtnl_mutex){+.+.}-{4:4}:
       lock_acquire+0x116/0x2f0 kernel/locking/lockdep.c:5866
       __mutex_lock_common kernel/locking/mutex.c:601 [inline]
       __mutex_lock+0x1a5/0x10c0 kernel/locking/mutex.c:746
       start_sync_thread+0xde/0x2d60 net/netfilter/ipvs/ip_vs_sync.c:1761
       do_ip_vs_set_ctl+0x48e/0xe50 net/netfilter/ipvs/ip_vs_ctl.c:2732
       nf_setsockopt+0x295/0x2c0 net/netfilter/nf_sockopt.c:101
       smc_setsockopt+0x25c/0xd50 net/smc/af_smc.c:3081
       do_sock_setsockopt+0x3b1/0x710 net/socket.c:2296
       __sys_setsockopt net/socket.c:2321 [inline]
       __do_sys_setsockopt net/socket.c:2327 [inline]
       __se_sys_setsockopt net/socket.c:2324 [inline]
       __x64_sys_setsockopt+0x1ee/0x280 net/socket.c:2324
       do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
       do_syscall_64+0xf3/0x230 arch/x86/entry/syscall_64.c:94
       entry_SYSCALL_64_after_hwframe+0x77/0x7f

-> #1 (&smc->clcsock_release_lock){+.+.}-{4:4}:
       lock_acquire+0x116/0x2f0 kernel/locking/lockdep.c:5866
       __mutex_lock_common kernel/locking/mutex.c:601 [inline]
       __mutex_lock+0x1a5/0x10c0 kernel/locking/mutex.c:746
       smc_switch_to_fallback+0x35/0xda0 net/smc/af_smc.c:903
       smc_sendmsg+0x11f/0x530 net/smc/af_smc.c:2781
       sock_sendmsg_nosec net/socket.c:712 [inline]
       __sock_sendmsg+0x221/0x270 net/socket.c:727
       __sys_sendto+0x365/0x4c0 net/socket.c:2180
       __do_sys_sendto net/socket.c:2187 [inline]
       __se_sys_sendto net/socket.c:2183 [inline]
       __x64_sys_sendto+0xde/0x100 net/socket.c:2183
       do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
       do_syscall_64+0xf3/0x230 arch/x86/entry/syscall_64.c:94
       entry_SYSCALL_64_after_hwframe+0x77/0x7f

-> #0 (sk_lock-AF_INET){+.+.}-{0:0}:
       check_prev_add kernel/locking/lockdep.c:3166 [inline]
       check_prevs_add kernel/locking/lockdep.c:3285 [inline]
       validate_chain+0xa69/0x24e0 kernel/locking/lockdep.c:3909
       __lock_acquire+0xad5/0xd80 kernel/locking/lockdep.c:5235
       lock_acquire+0x116/0x2f0 kernel/locking/lockdep.c:5866
       lock_sock_nested+0x48/0x100 net/core/sock.c:3697
       lock_sock include/net/sock.h:1615 [inline]
       sock_set_reuseaddr+0x17/0x60 net/core/sock.c:788
       siw_create_listen+0x19f/0x1250 drivers/infiniband/sw/siw/siw_cm.c:1777
       iw_cm_listen+0x15e/0x230 drivers/infiniband/core/iwcm.c:587
       cma_iw_listen drivers/infiniband/core/cma.c:2698 [inline]
       rdma_listen+0xb51/0xe40 drivers/infiniband/core/cma.c:3983
       cma_listen_on_dev+0x3e0/0x6f0 drivers/infiniband/core/cma.c:2757
       cma_add_one+0x7dc/0xce0 drivers/infiniband/core/cma.c:5387
       add_client_context+0x53e/0x8b0 drivers/infiniband/core/device.c:720
       enable_device_and_get+0x1de/0x450 drivers/infiniband/core/device.c:1331
       ib_register_device+0x1138/0x1460 drivers/infiniband/core/device.c:1447
       siw_device_register drivers/infiniband/sw/siw/siw_main.c:71 [inline]
       siw_newlink+0x938/0xda0 drivers/infiniband/sw/siw/siw_main.c:430
       nldev_newlink+0x5ed/0x680 drivers/infiniband/core/nldev.c:1796
       rdma_nl_rcv_msg drivers/infiniband/core/netlink.c:-1 [inline]
       rdma_nl_rcv_skb drivers/infiniband/core/netlink.c:239 [inline]
       rdma_nl_rcv+0x6e5/0x9e0 drivers/infiniband/core/netlink.c:259
       netlink_unicast_kernel net/netlink/af_netlink.c:1313 [inline]
       netlink_unicast+0x7f8/0x9a0 net/netlink/af_netlink.c:1339
       netlink_sendmsg+0x8c3/0xcd0 net/netlink/af_netlink.c:1883
       sock_sendmsg_nosec net/socket.c:712 [inline]
       __sock_sendmsg+0x221/0x270 net/socket.c:727
       ____sys_sendmsg+0x523/0x860 net/socket.c:2566
       ___sys_sendmsg net/socket.c:2620 [inline]
       __sys_sendmsg+0x271/0x360 net/socket.c:2652
       do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
       do_syscall_64+0xf3/0x230 arch/x86/entry/syscall_64.c:94
       entry_SYSCALL_64_after_hwframe+0x77/0x7f

other info that might help us debug this:

Chain exists of:
  sk_lock-AF_INET --> rtnl_mutex --> lock#7

 Possible unsafe locking scenario:

       CPU0                    CPU1
       ----                    ----
  lock(lock#7);
                               lock(rtnl_mutex);
                               lock(lock#7);
  lock(sk_lock-AF_INET);

 *** DEADLOCK ***

6 locks held by syz.4.507/7332:
 #0: ffffffff9aafa038 (&rdma_nl_types[idx].sem){.+.+}-{4:4}, at: rdma_nl_rcv_msg drivers/infiniband/core/netlink.c:164 [inline]
 #0: ffffffff9aafa038 (&rdma_nl_types[idx].sem){.+.+}-{4:4}, at: rdma_nl_rcv_skb drivers/infiniband/core/netlink.c:239 [inline]
 #0: ffffffff9aafa038 (&rdma_nl_types[idx].sem){.+.+}-{4:4}, at: rdma_nl_rcv+0x32f/0x9e0 drivers/infiniband/core/netlink.c:259
 #1: ffffffff8fe710f0 (link_ops_rwsem){++++}-{4:4}, at: nldev_newlink+0x456/0x680 drivers/infiniband/core/nldev.c:1786
 #2: ffffffff8fe63b90 (devices_rwsem){++++}-{4:4}, at: enable_device_and_get+0x130/0x450 drivers/infiniband/core/device.c:1321
 #3: ffffffff8fe63e90 (clients_rwsem){++++}-{4:4}, at: enable_device_and_get+0x18e/0x450 drivers/infiniband/core/device.c:1329
 #4: ffff8880487e45f0 (&device->client_data_rwsem){++++}-{4:4}, at: add_client_context+0x4fa/0x8b0 drivers/infiniband/core/device.c:718
 #5: ffffffff8fe84f28 (lock#7){+.+.}-{4:4}, at: cma_add_one+0x6c1/0xce0 drivers/infiniband/core/cma.c:5384

stack backtrace:
CPU: 0 UID: 0 PID: 7332 Comm: syz.4.507 Not tainted 6.14.0-syzkaller-13344-ga9843689e2de #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120
 print_circular_bug+0x2e1/0x300 kernel/locking/lockdep.c:2079
 check_noncircular+0x142/0x160 kernel/locking/lockdep.c:2211
 check_prev_add kernel/locking/lockdep.c:3166 [inline]
 check_prevs_add kernel/locking/lockdep.c:3285 [inline]
 validate_chain+0xa69/0x24e0 kernel/locking/lockdep.c:3909
 __lock_acquire+0xad5/0xd80 kernel/locking/lockdep.c:5235
 lock_acquire+0x116/0x2f0 kernel/locking/lockdep.c:5866
 lock_sock_nested+0x48/0x100 net/core/sock.c:3697
 lock_sock include/net/sock.h:1615 [inline]
 sock_set_reuseaddr+0x17/0x60 net/core/sock.c:788
 siw_create_listen+0x19f/0x1250 drivers/infiniband/sw/siw/siw_cm.c:1777
 iw_cm_listen+0x15e/0x230 drivers/infiniband/core/iwcm.c:587
 cma_iw_listen drivers/infiniband/core/cma.c:2698 [inline]
 rdma_listen+0xb51/0xe40 drivers/infiniband/core/cma.c:3983
 cma_listen_on_dev+0x3e0/0x6f0 drivers/infiniband/core/cma.c:2757
 cma_add_one+0x7dc/0xce0 drivers/infiniband/core/cma.c:5387
 add_client_context+0x53e/0x8b0 drivers/infiniband/core/device.c:720
 enable_device_and_get+0x1de/0x450 drivers/infiniband/core/device.c:1331
 ib_register_device+0x1138/0x1460 drivers/infiniband/core/device.c:1447
 siw_device_register drivers/infiniband/sw/siw/siw_main.c:71 [inline]
 siw_newlink+0x938/0xda0 drivers/infiniband/sw/siw/siw_main.c:430
 nldev_newlink+0x5ed/0x680 drivers/infiniband/core/nldev.c:1796
 rdma_nl_rcv_msg drivers/infiniband/core/netlink.c:-1 [inline]
 rdma_nl_rcv_skb drivers/infiniband/core/netlink.c:239 [inline]
 rdma_nl_rcv+0x6e5/0x9e0 drivers/infiniband/core/netlink.c:259
 netlink_unicast_kernel net/netlink/af_netlink.c:1313 [inline]
 netlink_unicast+0x7f8/0x9a0 net/netlink/af_netlink.c:1339
 netlink_sendmsg+0x8c3/0xcd0 net/netlink/af_netlink.c:1883
 sock_sendmsg_nosec net/socket.c:712 [inline]
 __sock_sendmsg+0x221/0x270 net/socket.c:727
 ____sys_sendmsg+0x523/0x860 net/socket.c:2566
 ___sys_sendmsg net/socket.c:2620 [inline]
 __sys_sendmsg+0x271/0x360 net/socket.c:2652
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xf3/0x230 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fa76a18d169
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fa76b064038 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
RAX: ffffffffffffffda RBX: 00007fa76a3a5fa0 RCX: 00007fa76a18d169
RDX: 0000000000000810 RSI: 0000200000000240 RDI: 0000000000000013
RBP: 00007fa76a20e990 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007fa76a3a5fa0 R15: 00007ffd0b8a6298
 </TASK>
infiniband syz2: RDMA CMA: cma_listen_on_dev, error -98
lo speed is unknown, defaulting to 1000
lo speed is unknown, defaulting to 1000
lo speed is unknown, defaulting to 1000
lo speed is unknown, defaulting to 1000
lo speed is unknown, defaulting to 1000
lo speed is unknown, defaulting to 1000