gfs2: fsid=syz:syz.0: first mount done, others may mount gfs2: fsid=syz:syz.0: can't create logd thread: -4 ======================================================== WARNING: possible irq lock inversion dependency detected 6.10.0-rc6-next-20240703-syzkaller #0 Not tainted -------------------------------------------------------- syz.0.7/5197 just changed the state of lock: ffff88802aa2ed48 (&sk->sk_lock.wq){+.+.}-{2:2}, at: touch_wq_lockdep_map kernel/workqueue.c:3869 [inline] ffff88802aa2ed48 (&sk->sk_lock.wq){+.+.}-{2:2}, at: __flush_workqueue+0x1b0/0x1710 kernel/workqueue.c:3911 but this lock was taken by another, SOFTIRQ-safe lock in the past: (slock-AF_INET6){+.-.}-{2:2} and interrupts could create inverse lock ordering between them. other info that might help us debug this: Possible interrupt unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&sk->sk_lock.wq); local_irq_disable(); lock(slock-AF_INET6); lock(&sk->sk_lock.wq); lock(slock-AF_INET6); *** DEADLOCK *** 1 lock held by syz.0.7/5197: #0: ffff8880793240e0 (&type->s_umount_key#49/1){+.+.}-{3:3}, at: alloc_super+0x221/0x9d0 fs/super.c:344 the shortest dependencies between 2nd lock and 1st lock: -> (slock-AF_INET6){+.-.}-{2:2} { HARDIRQ-ON-W at: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5816 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline] _raw_spin_lock_bh+0x35/0x50 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] lock_sock_nested+0x6a/0x100 net/core/sock.c:3546 lock_sock include/net/sock.h:1607 [inline] udpv6_destroy_sock+0x2a/0x240 net/ipv6/udp.c:1672 sk_common_release+0x72/0x320 net/core/sock.c:3742 inet_release+0x17d/0x200 net/ipv4/af_inet.c:437 __sock_release net/socket.c:659 [inline] sock_close+0xbc/0x240 net/socket.c:1421 __fput+0x24a/0x8a0 fs/file_table.c:422 __do_sys_close fs/open.c:1566 [inline] __se_sys_close fs/open.c:1551 [inline] __x64_sys_close+0x7f/0x110 fs/open.c:1551 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f IN-SOFTIRQ-W at: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5816 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:351 [inline] sctp_rcv+0x1aad/0x2580 net/sctp/input.c:218 sctp6_rcv+0x39/0x70 net/sctp/ipv6.c:1119 ip6_protocol_deliver_rcu+0x1058/0x1570 net/ipv6/ip6_input.c:438 ip6_input_finish+0x187/0x2d0 net/ipv6/ip6_input.c:483 NF_HOOK+0x3a4/0x450 include/linux/netfilter.h:314 NF_HOOK+0x3a4/0x450 include/linux/netfilter.h:314 __netif_receive_skb_one_core net/core/dev.c:5655 [inline] __netif_receive_skb+0x1ea/0x650 net/core/dev.c:5769 process_backlog+0x662/0x15b0 net/core/dev.c:6102 __napi_poll+0xcb/0x490 net/core/dev.c:6766 napi_poll net/core/dev.c:6835 [inline] net_rx_action+0x89b/0x1240 net/core/dev.c:6957 handle_softirqs+0x2c4/0x970 kernel/softirq.c:554 do_softirq+0x11b/0x1e0 kernel/softirq.c:455 __local_bh_enable_ip+0x1bb/0x200 kernel/softirq.c:382 local_bh_enable include/linux/bottom_half.h:33 [inline] rcu_read_unlock_bh include/linux/rcupdate.h:915 [inline] __dev_queue_xmit+0x1763/0x3e90 net/core/dev.c:4450 dev_queue_xmit include/linux/netdevice.h:3104 [inline] neigh_hh_output include/net/neighbour.h:526 [inline] neigh_output include/net/neighbour.h:540 [inline] ip6_finish_output2+0xfc2/0x1680 net/ipv6/ip6_output.c:137 ip6_finish_output+0x41e/0x810 net/ipv6/ip6_output.c:222 NF_HOOK include/linux/netfilter.h:314 [inline] ip6_xmit+0xefe/0x17f0 net/ipv6/ip6_output.c:358 sctp_v6_xmit+0x9f2/0x13f0 net/sctp/ipv6.c:248 sctp_packet_transmit+0x26af/0x2ca0 net/sctp/output.c:653 sctp_packet_singleton+0x22c/0x320 net/sctp/outqueue.c:783 sctp_outq_flush_ctrl net/sctp/outqueue.c:914 [inline] sctp_outq_flush+0x6d5/0x3e20 net/sctp/outqueue.c:1212 sctp_side_effects net/sctp/sm_sideeffect.c:1198 [inline] sctp_do_sm+0x59cc/0x60c0 net/sctp/sm_sideeffect.c:1169 sctp_primitive_ASSOCIATE+0x95/0xc0 net/sctp/primitive.c:73 sctp_sendmsg_to_asoc+0xfa5/0x1800 net/sctp/socket.c:1841 sctp_sendmsg+0x1bc3/0x3520 net/sctp/socket.c:2031 sock_sendmsg_nosec net/socket.c:730 [inline] __sock_sendmsg+0x1a6/0x270 net/socket.c:745 __sys_sendto+0x3a4/0x4f0 net/socket.c:2204 __do_sys_sendto net/socket.c:2216 [inline] __se_sys_sendto net/socket.c:2212 [inline] __x64_sys_sendto+0xde/0x100 net/socket.c:2212 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f INITIAL USE at: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5816 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:126 [inline] _raw_spin_lock_bh+0x35/0x50 kernel/locking/spinlock.c:178 spin_lock_bh include/linux/spinlock.h:356 [inline] lock_sock_nested+0x6a/0x100 net/core/sock.c:3546 lock_sock include/net/sock.h:1607 [inline] udpv6_destroy_sock+0x2a/0x240 net/ipv6/udp.c:1672 sk_common_release+0x72/0x320 net/core/sock.c:3742 inet_release+0x17d/0x200 net/ipv4/af_inet.c:437 __sock_release net/socket.c:659 [inline] sock_close+0xbc/0x240 net/socket.c:1421 __fput+0x24a/0x8a0 fs/file_table.c:422 __do_sys_close fs/open.c:1566 [inline] __se_sys_close fs/open.c:1551 [inline] __x64_sys_close+0x7f/0x110 fs/open.c:1551 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f } ... key at: [] af_family_slock_keys+0xa0/0x380 ... acquired at: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5816 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0xd5/0x120 kernel/locking/spinlock.c:162 prepare_to_wait_exclusive+0x45/0x220 kernel/sched/wait.c:250 __lock_sock+0x1c0/0x330 net/core/sock.c:2977 lock_sock_nested+0x9e/0x100 net/core/sock.c:3548 lock_sock include/net/sock.h:1607 [inline] sctp_setsockopt+0x203/0x11c0 net/sctp/socket.c:4600 do_sock_setsockopt+0x3af/0x720 net/socket.c:2324 __sys_setsockopt+0x1ae/0x250 net/socket.c:2347 __do_sys_setsockopt net/socket.c:2356 [inline] __se_sys_setsockopt net/socket.c:2353 [inline] __x64_sys_setsockopt+0xb5/0xd0 net/socket.c:2353 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f -> (&sk->sk_lock.wq){+.+.}-{2:2} { HARDIRQ-ON-W at: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5816 touch_wq_lockdep_map kernel/workqueue.c:3869 [inline] __flush_workqueue+0x1c9/0x1710 kernel/workqueue.c:3911 drain_workqueue+0xc9/0x3a0 kernel/workqueue.c:4075 destroy_workqueue+0xba/0xc40 kernel/workqueue.c:5781 gfs2_fill_super+0x128a/0x2500 fs/gfs2/ops_fstype.c:1310 get_tree_bdev+0x3f7/0x570 fs/super.c:1624 gfs2_get_tree+0x54/0x220 fs/gfs2/ops_fstype.c:1329 vfs_get_tree+0x90/0x2a0 fs/super.c:1789 do_new_mount+0x2be/0xb40 fs/namespace.c:3471 do_mount fs/namespace.c:3811 [inline] __do_sys_mount fs/namespace.c:4019 [inline] __se_sys_mount+0x2d6/0x3c0 fs/namespace.c:3996 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f SOFTIRQ-ON-W at: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5816 touch_wq_lockdep_map kernel/workqueue.c:3869 [inline] __flush_workqueue+0x1c9/0x1710 kernel/workqueue.c:3911 drain_workqueue+0xc9/0x3a0 kernel/workqueue.c:4075 destroy_workqueue+0xba/0xc40 kernel/workqueue.c:5781 gfs2_fill_super+0x128a/0x2500 fs/gfs2/ops_fstype.c:1310 get_tree_bdev+0x3f7/0x570 fs/super.c:1624 gfs2_get_tree+0x54/0x220 fs/gfs2/ops_fstype.c:1329 vfs_get_tree+0x90/0x2a0 fs/super.c:1789 do_new_mount+0x2be/0xb40 fs/namespace.c:3471 do_mount fs/namespace.c:3811 [inline] __do_sys_mount fs/namespace.c:4019 [inline] __se_sys_mount+0x2d6/0x3c0 fs/namespace.c:3996 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f INITIAL USE at: lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5816 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0xd5/0x120 kernel/locking/spinlock.c:162 prepare_to_wait_exclusive+0x45/0x220 kernel/sched/wait.c:250 __lock_sock+0x1c0/0x330 net/core/sock.c:2977 lock_sock_nested+0x9e/0x100 net/core/sock.c:3548 lock_sock include/net/sock.h:1607 [inline] sctp_setsockopt+0x203/0x11c0 net/sctp/socket.c:4600 do_sock_setsockopt+0x3af/0x720 net/socket.c:2324 __sys_setsockopt+0x1ae/0x250 net/socket.c:2347 __do_sys_setsockopt net/socket.c:2356 [inline] __se_sys_setsockopt net/socket.c:2353 [inline] __x64_sys_setsockopt+0xb5/0xd0 net/socket.c:2353 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f } ... key at: [] sock_lock_init.__key.35+0x0/0x20 ... acquired at: mark_lock+0x223/0x360 kernel/locking/lockdep.c:4722 __lock_acquire+0x1181/0x2000 kernel/locking/lockdep.c:5147 lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5816 touch_wq_lockdep_map kernel/workqueue.c:3869 [inline] __flush_workqueue+0x1c9/0x1710 kernel/workqueue.c:3911 drain_workqueue+0xc9/0x3a0 kernel/workqueue.c:4075 destroy_workqueue+0xba/0xc40 kernel/workqueue.c:5781 gfs2_fill_super+0x128a/0x2500 fs/gfs2/ops_fstype.c:1310 get_tree_bdev+0x3f7/0x570 fs/super.c:1624 gfs2_get_tree+0x54/0x220 fs/gfs2/ops_fstype.c:1329 vfs_get_tree+0x90/0x2a0 fs/super.c:1789 do_new_mount+0x2be/0xb40 fs/namespace.c:3471 do_mount fs/namespace.c:3811 [inline] __do_sys_mount fs/namespace.c:4019 [inline] __se_sys_mount+0x2d6/0x3c0 fs/namespace.c:3996 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f stack backtrace: CPU: 1 UID: 0 PID: 5197 Comm: syz.0.7 Not tainted 6.10.0-rc6-next-20240703-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/2024 Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120 print_irq_inversion_bug+0x33d/0x390 kernel/locking/lockdep.c:4118 mark_lock_irq+0x867/0xc20 kernel/locking/lockdep.c:4280 mark_lock+0x223/0x360 kernel/locking/lockdep.c:4722 __lock_acquire+0x1181/0x2000 kernel/locking/lockdep.c:5147 lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5816 touch_wq_lockdep_map kernel/workqueue.c:3869 [inline] __flush_workqueue+0x1c9/0x1710 kernel/workqueue.c:3911 drain_workqueue+0xc9/0x3a0 kernel/workqueue.c:4075 destroy_workqueue+0xba/0xc40 kernel/workqueue.c:5781 gfs2_fill_super+0x128a/0x2500 fs/gfs2/ops_fstype.c:1310 get_tree_bdev+0x3f7/0x570 fs/super.c:1624 gfs2_get_tree+0x54/0x220 fs/gfs2/ops_fstype.c:1329 vfs_get_tree+0x90/0x2a0 fs/super.c:1789 do_new_mount+0x2be/0xb40 fs/namespace.c:3471 do_mount fs/namespace.c:3811 [inline] __do_sys_mount fs/namespace.c:4019 [inline] __se_sys_mount+0x2d6/0x3c0 fs/namespace.c:3996 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fa4141772da Code: d8 64 89 02 48 c7 c0 ff ff ff ff eb a6 e8 7e 1a 00 00 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 49 89 ca b8 a5 00 00 00 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:00007fa414fbee78 EFLAGS: 00000206 ORIG_RAX: 00000000000000a5 RAX: ffffffffffffffda RBX: 00007fa414fbef00 RCX: 00007fa4141772da RDX: 00000000200124c0 RSI: 0000000020012500 RDI: 00007fa414fbeec0 RBP: 00000000200124c0 R08: 00007fa414fbef00 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000206 R12: 0000000020012500 R13: 00007fa414fbeec0 R14: 00000000000125b0 R15: 0000000020000280 list_del corruption, ffff88802aa2ec10->prev is LIST_POISON2 (dead000000000122) ------------[ cut here ]------------ kernel BUG at lib/list_debug.c:61! Oops: invalid opcode: 0000 [#1] PREEMPT SMP KASAN PTI CPU: 1 UID: 0 PID: 5197 Comm: syz.0.7 Not tainted 6.10.0-rc6-next-20240703-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/2024 RIP: 0010:__list_del_entry_valid_or_report+0x106/0x140 lib/list_debug.c:59 Code: e8 9f ed d6 06 90 0f 0b 48 c7 c7 00 83 20 8c 4c 89 fe e8 8d ed d6 06 90 0f 0b 48 c7 c7 60 83 20 8c 4c 89 fe e8 7b ed d6 06 90 <0f> 0b 48 c7 c7 c0 83 20 8c 4c 89 fe 48 89 d9 e8 66 ed d6 06 90 0f RSP: 0018:ffffc90004307928 EFLAGS: 00010246 RAX: 000000000000004e RBX: dead000000000122 RCX: c7dde88121190a00 RDX: ffffc90009059000 RSI: 000000000003ffff RDI: 0000000000040000 RBP: ffff88802aa2ecf8 R08: ffffffff8173a299 R09: 1ffff92000860ec0 R10: dffffc0000000000 R11: fffff52000860ec1 R12: dffffc0000000000 R13: ffff88802aa2ec00 R14: ffff88802c3f3810 R15: ffff88802aa2ec10 FS: 00007fa414fbf6c0(0000) GS:ffff8880b9500000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000001b32b13ff8 CR3: 000000002e75c000 CR4: 00000000003506f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: __list_del_entry_valid include/linux/list.h:124 [inline] __list_del_entry include/linux/list.h:215 [inline] list_del_rcu include/linux/rculist.h:157 [inline] destroy_workqueue+0x7b3/0xc40 kernel/workqueue.c:5823 gfs2_fill_super+0x128a/0x2500 fs/gfs2/ops_fstype.c:1310 get_tree_bdev+0x3f7/0x570 fs/super.c:1624 gfs2_get_tree+0x54/0x220 fs/gfs2/ops_fstype.c:1329 vfs_get_tree+0x90/0x2a0 fs/super.c:1789 do_new_mount+0x2be/0xb40 fs/namespace.c:3471 do_mount fs/namespace.c:3811 [inline] __do_sys_mount fs/namespace.c:4019 [inline] __se_sys_mount+0x2d6/0x3c0 fs/namespace.c:3996 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7fa4141772da Code: d8 64 89 02 48 c7 c0 ff ff ff ff eb a6 e8 7e 1a 00 00 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 49 89 ca b8 a5 00 00 00 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:00007fa414fbee78 EFLAGS: 00000206 ORIG_RAX: 00000000000000a5 RAX: ffffffffffffffda RBX: 00007fa414fbef00 RCX: 00007fa4141772da RDX: 00000000200124c0 RSI: 0000000020012500 RDI: 00007fa414fbeec0 RBP: 00000000200124c0 R08: 00007fa414fbef00 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000206 R12: 0000000020012500 R13: 00007fa414fbeec0 R14: 00000000000125b0 R15: 0000000020000280 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:__list_del_entry_valid_or_report+0x106/0x140 lib/list_debug.c:59 Code: e8 9f ed d6 06 90 0f 0b 48 c7 c7 00 83 20 8c 4c 89 fe e8 8d ed d6 06 90 0f 0b 48 c7 c7 60 83 20 8c 4c 89 fe e8 7b ed d6 06 90 <0f> 0b 48 c7 c7 c0 83 20 8c 4c 89 fe 48 89 d9 e8 66 ed d6 06 90 0f RSP: 0018:ffffc90004307928 EFLAGS: 00010246 RAX: 000000000000004e RBX: dead000000000122 RCX: c7dde88121190a00 RDX: ffffc90009059000 RSI: 000000000003ffff RDI: 0000000000040000 RBP: ffff88802aa2ecf8 R08: ffffffff8173a299 R09: 1ffff92000860ec0 R10: dffffc0000000000 R11: fffff52000860ec1 R12: dffffc0000000000 R13: ffff88802aa2ec00 R14: ffff88802c3f3810 R15: ffff88802aa2ec10 FS: 00007fa414fbf6c0(0000) GS:ffff8880b9400000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000002004d000 CR3: 000000002e75c000 CR4: 00000000003506f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400