============================================ WARNING: possible recursive locking detected 6.12.0-rc3-syzkaller-g9ec59cb3edc7 #0 Tainted: G W -------------------------------------------- syz.1.3843/16008 is trying to acquire lock: ffff0000d198d5d8 (k-slock-AF_INET#2){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline] ffff0000d198d5d8 (k-slock-AF_INET#2){+.-.}-{2:2}, at: sk_clone_lock+0x2e0/0xe14 net/core/sock.c:2396 but task is already holding lock: ffff0000d850db18 (k-slock-AF_INET#2){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline] ffff0000d850db18 (k-slock-AF_INET#2){+.-.}-{2:2}, at: sk_clone_lock+0x2e0/0xe14 net/core/sock.c:2396 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(k-slock-AF_INET#2); lock(k-slock-AF_INET#2); *** DEADLOCK *** May be due to missing lock nesting notation 7 locks held by syz.1.3843/16008: #0: ffff0000d198b258 (sk_lock-AF_INET){+.+.}-{0:0}, at: lock_sock include/net/sock.h:1611 [inline] #0: ffff0000d198b258 (sk_lock-AF_INET){+.+.}-{0:0}, at: inet_stream_connect+0x5c/0xb0 net/ipv4/af_inet.c:749 #1: ffff0000d850e858 (k-sk_lock-AF_INET){+.+.}-{0:0}, at: lock_sock include/net/sock.h:1611 [inline] #1: ffff0000d850e858 (k-sk_lock-AF_INET){+.+.}-{0:0}, at: mptcp_connect+0x6b4/0xcd4 net/mptcp/protocol.c:3778 #2: ffff80008f9d0520 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x10/0x4c include/linux/rcupdate.h:336 #3: ffff80008f9d0520 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x10/0x4c include/linux/rcupdate.h:336 #4: ffff80008f9d0520 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x18/0x54 include/linux/rcupdate.h:336 #5: ffff80008f9d0520 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x10/0x4c include/linux/rcupdate.h:336 #6: ffff0000d850db18 (k-slock-AF_INET#2){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline] #6: ffff0000d850db18 (k-slock-AF_INET#2){+.-.}-{2:2}, at: sk_clone_lock+0x2e0/0xe14 net/core/sock.c:2396 stack backtrace: CPU: 1 UID: 0 PID: 16008 Comm: syz.1.3843 Tainted: G W 6.12.0-rc3-syzkaller-g9ec59cb3edc7 #0 Tainted: [W]=WARN Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:484 (C) __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120 dump_stack+0x1c/0x28 lib/dump_stack.c:129 print_deadlock_bug+0x4e8/0x668 kernel/locking/lockdep.c:3037 check_deadlock kernel/locking/lockdep.c:3089 [inline] validate_chain kernel/locking/lockdep.c:3891 [inline] __lock_acquire+0x6180/0x77c8 kernel/locking/lockdep.c:5202 lock_acquire+0x240/0x728 kernel/locking/lockdep.c:5825 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x48/0x60 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:351 [inline] sk_clone_lock+0x2e0/0xe14 net/core/sock.c:2396 mptcp_sk_clone_init+0x44/0x1600 net/mptcp/protocol.c:3297 subflow_syn_recv_sock+0x838/0x14f4 net/mptcp/subflow.c:878 tcp_check_req+0xe1c/0x1790 net/ipv4/tcp_minisocks.c:858 tcp_v4_rcv+0x1574/0x2dbc net/ipv4/tcp_ipv4.c:2271 ip_protocol_deliver_rcu+0x1f8/0x484 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x284/0x4f0 net/ipv4/ip_input.c:233 NF_HOOK+0x328/0x3d4 include/linux/netfilter.h:314 ip_local_deliver+0x120/0x194 net/ipv4/ip_input.c:254 dst_input include/net/dst.h:460 [inline] ip_rcv_finish+0x220/0x24c net/ipv4/ip_input.c:449 NF_HOOK+0x328/0x3d4 include/linux/netfilter.h:314 ip_rcv+0x7c/0x9c net/ipv4/ip_input.c:569 __netif_receive_skb_one_core net/core/dev.c:5666 [inline] __netif_receive_skb+0x18c/0x3c8 net/core/dev.c:5779 process_backlog+0x640/0x123c net/core/dev.c:6111 __napi_poll+0xb4/0x3fc net/core/dev.c:6775 napi_poll net/core/dev.c:6844 [inline] net_rx_action+0x6a8/0xf4c net/core/dev.c:6966 handle_softirqs+0x2e0/0xbf8 kernel/softirq.c:554 __do_softirq+0x14/0x20 kernel/softirq.c:588 ____do_softirq+0x14/0x20 arch/arm64/kernel/irq.c:81 call_on_irq_stack+0x24/0x4c arch/arm64/kernel/entry.S:891 do_softirq_own_stack+0x20/0x2c arch/arm64/kernel/irq.c:86 do_softirq+0x90/0xf8 kernel/softirq.c:455 __local_bh_enable_ip+0x288/0x44c kernel/softirq.c:382 local_bh_enable+0x28/0x34 include/linux/bottom_half.h:33 rcu_read_unlock_bh include/linux/rcupdate.h:919 [inline] __dev_queue_xmit+0x1814/0x3548 net/core/dev.c:4455 dev_queue_xmit include/linux/netdevice.h:3094 [inline] neigh_hh_output include/net/neighbour.h:526 [inline] neigh_output include/net/neighbour.h:540 [inline] ip_finish_output2+0xda4/0x1384 net/ipv4/ip_output.c:236 __ip_finish_output+0x1b0/0x45c ip_finish_output+0x44/0x2e8 net/ipv4/ip_output.c:324 NF_HOOK_COND include/linux/netfilter.h:303 [inline] ip_output+0x1a8/0x21c net/ipv4/ip_output.c:434 dst_output include/net/dst.h:450 [inline] ip_local_out net/ipv4/ip_output.c:130 [inline] __ip_queue_xmit+0xe10/0x1878 net/ipv4/ip_output.c:536 ip_queue_xmit+0x5c/0x78 net/ipv4/ip_output.c:550 __tcp_transmit_skb+0x1950/0x34bc net/ipv4/tcp_output.c:1466 __tcp_send_ack+0x248/0x518 net/ipv4/tcp_output.c:4268 tcp_send_ack+0x4c/0x64 net/ipv4/tcp_output.c:4274 tcp_rcv_synsent_state_process net/ipv4/tcp_input.c:6576 [inline] tcp_rcv_state_process+0x2550/0x3e30 net/ipv4/tcp_input.c:6770 tcp_v4_do_rcv+0x71c/0xc44 net/ipv4/tcp_ipv4.c:1938 sk_backlog_rcv include/net/sock.h:1115 [inline] __release_sock+0x1a8/0x3d8 net/core/sock.c:3072 release_sock+0x68/0x1b8 net/core/sock.c:3626 mptcp_connect+0x7e8/0xcd4 net/mptcp/protocol.c:3800 __inet_stream_connect+0x208/0xc48 net/ipv4/af_inet.c:679 inet_stream_connect+0x74/0xb0 net/ipv4/af_inet.c:750 __sys_connect_file net/socket.c:2071 [inline] __sys_connect+0x268/0x290 net/socket.c:2088 __do_sys_connect net/socket.c:2098 [inline] __se_sys_connect net/socket.c:2095 [inline] __arm64_sys_connect+0x7c/0x94 net/socket.c:2095 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132 do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151 el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744 el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600 vkms_vblank_simulate: vblank timer overrun