BUG: sleeping function called from invalid context at kernel/locking/mutex.c:935 in_atomic(): 1, irqs_disabled(): 0, pid: 15674, name: syz-executor.4 2 locks held by syz-executor.4/15674: #0: ffffffff8999eb60 (rtnl_mutex){+.+.}, at: rtnl_lock net/core/rtnetlink.c:72 [inline] #0: ffffffff8999eb60 (rtnl_mutex){+.+.}, at: rtnetlink_rcv_msg+0x40a/0xb00 net/core/rtnetlink.c:5220 #1: ffff888093420400 (&(&sch->q.lock)->rlock){+.-.}, at: spin_lock_bh include/linux/spinlock.h:343 [inline] #1: ffff888093420400 (&(&sch->q.lock)->rlock){+.-.}, at: sch_tree_lock include/net/sch_generic.h:544 [inline] #1: ffff888093420400 (&(&sch->q.lock)->rlock){+.-.}, at: sfb_change+0x257/0xe90 net/sched/sch_sfb.c:519 Preemption disabled at: [] spin_lock_bh include/linux/spinlock.h:343 [inline] [] sch_tree_lock include/net/sch_generic.h:544 [inline] [] sfb_change+0x257/0xe90 net/sched/sch_sfb.c:519 CPU: 1 PID: 15674 Comm: syz-executor.4 Not tainted 5.3.0+ #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x172/0x1f0 lib/dump_stack.c:113 ___might_sleep.cold+0x1be/0x1f7 kernel/sched/core.c:6798 __might_sleep+0x95/0x190 kernel/sched/core.c:6751 __mutex_lock_common kernel/locking/mutex.c:935 [inline] __mutex_lock+0xc5/0x13c0 kernel/locking/mutex.c:1103 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1118 tcf_chain0_head_change_cb_del.isra.0+0x34/0x3e0 net/sched/cls_api.c:774 tcf_block_put_ext.part.0+0x2a/0x80 net/sched/cls_api.c:1345 tcf_block_put_ext net/sched/cls_api.c:1343 [inline] tcf_block_put+0xbf/0x110 net/sched/cls_api.c:1358 sfb_destroy+0x37/0x80 net/sched/sch_sfb.c:467 qdisc_destroy+0x11f/0x630 net/sched/sch_generic.c:968 qdisc_put+0x85/0xa0 net/sched/sch_generic.c:995 sfb_change+0x3d8/0xe90 net/sched/sch_sfb.c:522 qdisc_change net/sched/sch_api.c:1321 [inline] tc_modify_qdisc+0xfcf/0x1c50 net/sched/sch_api.c:1623 rtnetlink_rcv_msg+0x463/0xb00 net/core/rtnetlink.c:5223 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5241 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x531/0x710 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x8a5/0xd60 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:637 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:657 ___sys_sendmsg+0x803/0x920 net/socket.c:2311 __sys_sendmsg+0x105/0x1d0 net/socket.c:2356 __do_sys_sendmsg net/socket.c:2365 [inline] __se_sys_sendmsg net/socket.c:2363 [inline] __x64_sys_sendmsg+0x78/0xb0 net/socket.c:2363 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x459a09 Code: fd b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 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 0f 83 cb b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007fe7c9c5dc78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000000459a09 RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000007 RBP: 000000000075bf20 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007fe7c9c5e6d4 R13: 00000000004c7933 R14: 00000000004dd328 R15: 00000000ffffffff ===================================================== WARNING: SOFTIRQ-safe -> SOFTIRQ-unsafe lock order detected 5.3.0+ #0 Tainted: G W ----------------------------------------------------- syz-executor.4/15674 [HC0[0]:SC0[2]:HE1:SE0] is trying to acquire: ffff888097eb68a0 (&block->lock){+.+.}, at: tcf_chain0_head_change_cb_del.isra.0+0x34/0x3e0 net/sched/cls_api.c:774 and this task is already holding: ffff888093420400 (&(&sch->q.lock)->rlock){+.-.}, at: spin_lock_bh include/linux/spinlock.h:343 [inline] ffff888093420400 (&(&sch->q.lock)->rlock){+.-.}, at: sch_tree_lock include/net/sch_generic.h:544 [inline] ffff888093420400 (&(&sch->q.lock)->rlock){+.-.}, at: sfb_change+0x257/0xe90 net/sched/sch_sfb.c:519 which would create a new lock dependency: (&(&sch->q.lock)->rlock){+.-.} -> (&block->lock){+.+.} but this new dependency connects a SOFTIRQ-irq-safe lock: (&(&sch->q.lock)->rlock){+.-.} ... which became SOFTIRQ-irq-safe at: lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline] _raw_spin_lock+0x2f/0x40 kernel/locking/spinlock.c:151 spin_lock include/linux/spinlock.h:338 [inline] __dev_xmit_skb net/core/dev.c:3506 [inline] __dev_queue_xmit+0x14b0/0x36f0 net/core/dev.c:3842 dev_queue_xmit+0x18/0x20 net/core/dev.c:3906 br_dev_queue_push_xmit+0x3f3/0x5c0 net/bridge/br_forward.c:52 NF_HOOK include/linux/netfilter.h:305 [inline] NF_HOOK include/linux/netfilter.h:299 [inline] br_forward_finish+0xfa/0x400 net/bridge/br_forward.c:65 NF_HOOK include/linux/netfilter.h:305 [inline] NF_HOOK include/linux/netfilter.h:299 [inline] __br_forward+0x641/0xb00 net/bridge/br_forward.c:109 deliver_clone+0x61/0xc0 net/bridge/br_forward.c:125 maybe_deliver+0x2c7/0x390 net/bridge/br_forward.c:181 br_flood+0x13a/0x3d0 net/bridge/br_forward.c:223 br_dev_xmit+0x98c/0x15a0 net/bridge/br_device.c:100 __netdev_start_xmit include/linux/netdevice.h:4420 [inline] netdev_start_xmit include/linux/netdevice.h:4434 [inline] xmit_one net/core/dev.c:3280 [inline] dev_hard_start_xmit+0x1a3/0x9b0 net/core/dev.c:3296 __dev_queue_xmit+0x2c6f/0x36f0 net/core/dev.c:3873 dev_queue_xmit+0x18/0x20 net/core/dev.c:3906 neigh_resolve_output net/core/neighbour.c:1490 [inline] neigh_resolve_output+0x5a5/0x970 net/core/neighbour.c:1470 neigh_output include/net/neighbour.h:511 [inline] ip6_finish_output2+0x1034/0x2520 net/ipv6/ip6_output.c:116 __ip6_finish_output+0x444/0xa50 net/ipv6/ip6_output.c:142 ip6_finish_output+0x38/0x1f0 net/ipv6/ip6_output.c:152 NF_HOOK_COND include/linux/netfilter.h:294 [inline] ip6_output+0x235/0x7c0 net/ipv6/ip6_output.c:175 dst_output include/net/dst.h:436 [inline] NF_HOOK include/linux/netfilter.h:305 [inline] ndisc_send_skb+0xf29/0x1450 net/ipv6/ndisc.c:505 ndisc_send_rs+0x134/0x6d0 net/ipv6/ndisc.c:699 addrconf_rs_timer+0x30f/0x680 net/ipv6/addrconf.c:3879 call_timer_fn+0x1ac/0x780 kernel/time/timer.c:1404 expire_timers kernel/time/timer.c:1449 [inline] __run_timers kernel/time/timer.c:1771 [inline] __run_timers kernel/time/timer.c:1738 [inline] run_timer_softirq+0x6c0/0x17f0 kernel/time/timer.c:1784 __do_softirq+0x262/0x98c kernel/softirq.c:292 invoke_softirq kernel/softirq.c:373 [inline] irq_exit+0x19b/0x1e0 kernel/softirq.c:413 exiting_irq arch/x86/include/asm/apic.h:536 [inline] smp_apic_timer_interrupt+0x1a3/0x610 arch/x86/kernel/apic/apic.c:1137 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:830 native_safe_halt+0xe/0x10 arch/x86/include/asm/irqflags.h:60 arch_cpu_idle+0xa/0x10 arch/x86/kernel/process.c:571 default_idle_call+0x84/0xb0 kernel/sched/idle.c:94 cpuidle_idle_call kernel/sched/idle.c:154 [inline] do_idle+0x3b7/0x6e0 kernel/sched/idle.c:264 cpu_startup_entry+0x1b/0x20 kernel/sched/idle.c:356 start_secondary+0x2f4/0x410 arch/x86/kernel/smpboot.c:264 secondary_startup_64+0xa4/0xb0 arch/x86/kernel/head_64.S:241 to a SOFTIRQ-irq-unsafe lock: (&block->lock){+.+.} ... which became SOFTIRQ-irq-unsafe at: ... lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __mutex_lock_common kernel/locking/mutex.c:956 [inline] __mutex_lock+0x156/0x13c0 kernel/locking/mutex.c:1103 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1118 tcf_chain0_head_change_cb_add net/sched/cls_api.c:740 [inline] tcf_block_get_ext+0x3d6/0x16a0 net/sched/cls_api.c:1294 tcf_block_get+0xb9/0x100 net/sched/cls_api.c:1333 sfq_init+0xe1/0x1f00 net/sched/sch_sfq.c:730 qdisc_create+0x4ee/0x1210 net/sched/sch_api.c:1237 tc_modify_qdisc+0x524/0x1c50 net/sched/sch_api.c:1652 rtnetlink_rcv_msg+0x463/0xb00 net/core/rtnetlink.c:5223 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5241 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x531/0x710 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x8a5/0xd60 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:637 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:657 ___sys_sendmsg+0x3e2/0x920 net/socket.c:2311 __sys_sendmmsg+0x1bf/0x4d0 net/socket.c:2413 __do_sys_sendmmsg net/socket.c:2442 [inline] __se_sys_sendmmsg net/socket.c:2439 [inline] __x64_sys_sendmmsg+0x9d/0x100 net/socket.c:2439 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe other info that might help us debug this: Possible interrupt unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&block->lock); local_irq_disable(); lock(&(&sch->q.lock)->rlock); lock(&block->lock); lock(&(&sch->q.lock)->rlock); *** DEADLOCK *** 2 locks held by syz-executor.4/15674: #0: ffffffff8999eb60 (rtnl_mutex){+.+.}, at: rtnl_lock net/core/rtnetlink.c:72 [inline] #0: ffffffff8999eb60 (rtnl_mutex){+.+.}, at: rtnetlink_rcv_msg+0x40a/0xb00 net/core/rtnetlink.c:5220 #1: ffff888093420400 (&(&sch->q.lock)->rlock){+.-.}, at: spin_lock_bh include/linux/spinlock.h:343 [inline] #1: ffff888093420400 (&(&sch->q.lock)->rlock){+.-.}, at: sch_tree_lock include/net/sch_generic.h:544 [inline] #1: ffff888093420400 (&(&sch->q.lock)->rlock){+.-.}, at: sfb_change+0x257/0xe90 net/sched/sch_sfb.c:519 the dependencies between SOFTIRQ-irq-safe lock and the holding lock: -> (&(&sch->q.lock)->rlock){+.-.} { HARDIRQ-ON-W at: lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:135 [inline] _raw_spin_lock_bh+0x33/0x50 kernel/locking/spinlock.c:175 spin_lock_bh include/linux/spinlock.h:343 [inline] some_qdisc_is_busy net/sched/sch_generic.c:1168 [inline] dev_deactivate_many+0x60a/0xc20 net/sched/sch_generic.c:1220 dev_deactivate+0x115/0x1e0 net/sched/sch_generic.c:1236 linkwatch_do_dev+0x160/0x190 net/core/link_watch.c:157 __linkwatch_run_queue+0x203/0x690 net/core/link_watch.c:204 linkwatch_event+0x4e/0x70 net/core/link_watch.c:243 process_one_work+0x9af/0x1740 kernel/workqueue.c:2269 worker_thread+0x98/0xe40 kernel/workqueue.c:2415 kthread+0x361/0x430 kernel/kthread.c:255 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:352 IN-SOFTIRQ-W at: lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline] _raw_spin_lock+0x2f/0x40 kernel/locking/spinlock.c:151 spin_lock include/linux/spinlock.h:338 [inline] __dev_xmit_skb net/core/dev.c:3506 [inline] __dev_queue_xmit+0x14b0/0x36f0 net/core/dev.c:3842 dev_queue_xmit+0x18/0x20 net/core/dev.c:3906 br_dev_queue_push_xmit+0x3f3/0x5c0 net/bridge/br_forward.c:52 NF_HOOK include/linux/netfilter.h:305 [inline] NF_HOOK include/linux/netfilter.h:299 [inline] br_forward_finish+0xfa/0x400 net/bridge/br_forward.c:65 NF_HOOK include/linux/netfilter.h:305 [inline] NF_HOOK include/linux/netfilter.h:299 [inline] __br_forward+0x641/0xb00 net/bridge/br_forward.c:109 deliver_clone+0x61/0xc0 net/bridge/br_forward.c:125 maybe_deliver+0x2c7/0x390 net/bridge/br_forward.c:181 br_flood+0x13a/0x3d0 net/bridge/br_forward.c:223 br_dev_xmit+0x98c/0x15a0 net/bridge/br_device.c:100 __netdev_start_xmit include/linux/netdevice.h:4420 [inline] netdev_start_xmit include/linux/netdevice.h:4434 [inline] xmit_one net/core/dev.c:3280 [inline] dev_hard_start_xmit+0x1a3/0x9b0 net/core/dev.c:3296 __dev_queue_xmit+0x2c6f/0x36f0 net/core/dev.c:3873 dev_queue_xmit+0x18/0x20 net/core/dev.c:3906 neigh_resolve_output net/core/neighbour.c:1490 [inline] neigh_resolve_output+0x5a5/0x970 net/core/neighbour.c:1470 neigh_output include/net/neighbour.h:511 [inline] ip6_finish_output2+0x1034/0x2520 net/ipv6/ip6_output.c:116 __ip6_finish_output+0x444/0xa50 net/ipv6/ip6_output.c:142 ip6_finish_output+0x38/0x1f0 net/ipv6/ip6_output.c:152 NF_HOOK_COND include/linux/netfilter.h:294 [inline] ip6_output+0x235/0x7c0 net/ipv6/ip6_output.c:175 dst_output include/net/dst.h:436 [inline] NF_HOOK include/linux/netfilter.h:305 [inline] ndisc_send_skb+0xf29/0x1450 net/ipv6/ndisc.c:505 ndisc_send_rs+0x134/0x6d0 net/ipv6/ndisc.c:699 addrconf_rs_timer+0x30f/0x680 net/ipv6/addrconf.c:3879 call_timer_fn+0x1ac/0x780 kernel/time/timer.c:1404 expire_timers kernel/time/timer.c:1449 [inline] __run_timers kernel/time/timer.c:1771 [inline] __run_timers kernel/time/timer.c:1738 [inline] run_timer_softirq+0x6c0/0x17f0 kernel/time/timer.c:1784 __do_softirq+0x262/0x98c kernel/softirq.c:292 invoke_softirq kernel/softirq.c:373 [inline] irq_exit+0x19b/0x1e0 kernel/softirq.c:413 exiting_irq arch/x86/include/asm/apic.h:536 [inline] smp_apic_timer_interrupt+0x1a3/0x610 arch/x86/kernel/apic/apic.c:1137 apic_timer_interrupt+0xf/0x20 arch/x86/entry/entry_64.S:830 native_safe_halt+0xe/0x10 arch/x86/include/asm/irqflags.h:60 arch_cpu_idle+0xa/0x10 arch/x86/kernel/process.c:571 default_idle_call+0x84/0xb0 kernel/sched/idle.c:94 cpuidle_idle_call kernel/sched/idle.c:154 [inline] do_idle+0x3b7/0x6e0 kernel/sched/idle.c:264 cpu_startup_entry+0x1b/0x20 kernel/sched/idle.c:356 start_secondary+0x2f4/0x410 arch/x86/kernel/smpboot.c:264 secondary_startup_64+0xa4/0xb0 arch/x86/kernel/head_64.S:241 INITIAL USE at: lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:135 [inline] _raw_spin_lock_bh+0x33/0x50 kernel/locking/spinlock.c:175 spin_lock_bh include/linux/spinlock.h:343 [inline] some_qdisc_is_busy net/sched/sch_generic.c:1168 [inline] dev_deactivate_many+0x60a/0xc20 net/sched/sch_generic.c:1220 dev_deactivate+0x115/0x1e0 net/sched/sch_generic.c:1236 linkwatch_do_dev+0x160/0x190 net/core/link_watch.c:157 __linkwatch_run_queue+0x203/0x690 net/core/link_watch.c:204 linkwatch_event+0x4e/0x70 net/core/link_watch.c:243 process_one_work+0x9af/0x1740 kernel/workqueue.c:2269 worker_thread+0x98/0xe40 kernel/workqueue.c:2415 kthread+0x361/0x430 kernel/kthread.c:255 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:352 } ... key at: [] __key.79365+0x0/0x40 ... acquired at: lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __mutex_lock_common kernel/locking/mutex.c:956 [inline] __mutex_lock+0x156/0x13c0 kernel/locking/mutex.c:1103 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1118 tcf_chain0_head_change_cb_del.isra.0+0x34/0x3e0 net/sched/cls_api.c:774 tcf_block_put_ext.part.0+0x2a/0x80 net/sched/cls_api.c:1345 tcf_block_put_ext net/sched/cls_api.c:1343 [inline] tcf_block_put+0xbf/0x110 net/sched/cls_api.c:1358 sfb_destroy+0x37/0x80 net/sched/sch_sfb.c:467 qdisc_destroy+0x11f/0x630 net/sched/sch_generic.c:968 qdisc_put+0x85/0xa0 net/sched/sch_generic.c:995 sfb_change+0x3d8/0xe90 net/sched/sch_sfb.c:522 qdisc_change net/sched/sch_api.c:1321 [inline] tc_modify_qdisc+0xfcf/0x1c50 net/sched/sch_api.c:1623 rtnetlink_rcv_msg+0x463/0xb00 net/core/rtnetlink.c:5223 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5241 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x531/0x710 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x8a5/0xd60 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:637 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:657 ___sys_sendmsg+0x803/0x920 net/socket.c:2311 __sys_sendmsg+0x105/0x1d0 net/socket.c:2356 __do_sys_sendmsg net/socket.c:2365 [inline] __se_sys_sendmsg net/socket.c:2363 [inline] __x64_sys_sendmsg+0x78/0xb0 net/socket.c:2363 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe the dependencies between the lock to be acquired and SOFTIRQ-irq-unsafe lock: -> (&block->lock){+.+.} { HARDIRQ-ON-W at: lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __mutex_lock_common kernel/locking/mutex.c:956 [inline] __mutex_lock+0x156/0x13c0 kernel/locking/mutex.c:1103 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1118 tcf_chain0_head_change_cb_add net/sched/cls_api.c:740 [inline] tcf_block_get_ext+0x3d6/0x16a0 net/sched/cls_api.c:1294 tcf_block_get+0xb9/0x100 net/sched/cls_api.c:1333 sfq_init+0xe1/0x1f00 net/sched/sch_sfq.c:730 qdisc_create+0x4ee/0x1210 net/sched/sch_api.c:1237 tc_modify_qdisc+0x524/0x1c50 net/sched/sch_api.c:1652 rtnetlink_rcv_msg+0x463/0xb00 net/core/rtnetlink.c:5223 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5241 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x531/0x710 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x8a5/0xd60 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:637 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:657 ___sys_sendmsg+0x3e2/0x920 net/socket.c:2311 __sys_sendmmsg+0x1bf/0x4d0 net/socket.c:2413 __do_sys_sendmmsg net/socket.c:2442 [inline] __se_sys_sendmmsg net/socket.c:2439 [inline] __x64_sys_sendmmsg+0x9d/0x100 net/socket.c:2439 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe SOFTIRQ-ON-W at: lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __mutex_lock_common kernel/locking/mutex.c:956 [inline] __mutex_lock+0x156/0x13c0 kernel/locking/mutex.c:1103 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1118 tcf_chain0_head_change_cb_add net/sched/cls_api.c:740 [inline] tcf_block_get_ext+0x3d6/0x16a0 net/sched/cls_api.c:1294 tcf_block_get+0xb9/0x100 net/sched/cls_api.c:1333 sfq_init+0xe1/0x1f00 net/sched/sch_sfq.c:730 qdisc_create+0x4ee/0x1210 net/sched/sch_api.c:1237 tc_modify_qdisc+0x524/0x1c50 net/sched/sch_api.c:1652 rtnetlink_rcv_msg+0x463/0xb00 net/core/rtnetlink.c:5223 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5241 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x531/0x710 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x8a5/0xd60 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:637 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:657 ___sys_sendmsg+0x3e2/0x920 net/socket.c:2311 __sys_sendmmsg+0x1bf/0x4d0 net/socket.c:2413 __do_sys_sendmmsg net/socket.c:2442 [inline] __se_sys_sendmmsg net/socket.c:2439 [inline] __x64_sys_sendmmsg+0x9d/0x100 net/socket.c:2439 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe INITIAL USE at: lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __mutex_lock_common kernel/locking/mutex.c:956 [inline] __mutex_lock+0x156/0x13c0 kernel/locking/mutex.c:1103 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1118 tcf_chain0_head_change_cb_add net/sched/cls_api.c:740 [inline] tcf_block_get_ext+0x3d6/0x16a0 net/sched/cls_api.c:1294 tcf_block_get+0xb9/0x100 net/sched/cls_api.c:1333 sfq_init+0xe1/0x1f00 net/sched/sch_sfq.c:730 qdisc_create+0x4ee/0x1210 net/sched/sch_api.c:1237 tc_modify_qdisc+0x524/0x1c50 net/sched/sch_api.c:1652 rtnetlink_rcv_msg+0x463/0xb00 net/core/rtnetlink.c:5223 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5241 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x531/0x710 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x8a5/0xd60 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:637 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:657 ___sys_sendmsg+0x3e2/0x920 net/socket.c:2311 __sys_sendmmsg+0x1bf/0x4d0 net/socket.c:2413 __do_sys_sendmmsg net/socket.c:2442 [inline] __se_sys_sendmmsg net/socket.c:2439 [inline] __x64_sys_sendmmsg+0x9d/0x100 net/socket.c:2439 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe } ... key at: [] __key.76997+0x0/0x40 ... acquired at: lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __mutex_lock_common kernel/locking/mutex.c:956 [inline] __mutex_lock+0x156/0x13c0 kernel/locking/mutex.c:1103 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1118 tcf_chain0_head_change_cb_del.isra.0+0x34/0x3e0 net/sched/cls_api.c:774 tcf_block_put_ext.part.0+0x2a/0x80 net/sched/cls_api.c:1345 tcf_block_put_ext net/sched/cls_api.c:1343 [inline] tcf_block_put+0xbf/0x110 net/sched/cls_api.c:1358 sfb_destroy+0x37/0x80 net/sched/sch_sfb.c:467 qdisc_destroy+0x11f/0x630 net/sched/sch_generic.c:968 qdisc_put+0x85/0xa0 net/sched/sch_generic.c:995 sfb_change+0x3d8/0xe90 net/sched/sch_sfb.c:522 qdisc_change net/sched/sch_api.c:1321 [inline] tc_modify_qdisc+0xfcf/0x1c50 net/sched/sch_api.c:1623 rtnetlink_rcv_msg+0x463/0xb00 net/core/rtnetlink.c:5223 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5241 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x531/0x710 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x8a5/0xd60 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:637 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:657 ___sys_sendmsg+0x803/0x920 net/socket.c:2311 __sys_sendmsg+0x105/0x1d0 net/socket.c:2356 __do_sys_sendmsg net/socket.c:2365 [inline] __se_sys_sendmsg net/socket.c:2363 [inline] __x64_sys_sendmsg+0x78/0xb0 net/socket.c:2363 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe stack backtrace: CPU: 1 PID: 15674 Comm: syz-executor.4 Tainted: G W 5.3.0+ #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x172/0x1f0 lib/dump_stack.c:113 print_bad_irq_dependency kernel/locking/lockdep.c:2095 [inline] check_irq_usage.cold+0x586/0x6fe kernel/locking/lockdep.c:2293 check_prev_add kernel/locking/lockdep.c:2480 [inline] check_prevs_add kernel/locking/lockdep.c:2581 [inline] validate_chain kernel/locking/lockdep.c:2971 [inline] __lock_acquire+0x25d0/0x4e70 kernel/locking/lockdep.c:3955 lock_acquire+0x190/0x410 kernel/locking/lockdep.c:4487 __mutex_lock_common kernel/locking/mutex.c:956 [inline] __mutex_lock+0x156/0x13c0 kernel/locking/mutex.c:1103 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1118 tcf_chain0_head_change_cb_del.isra.0+0x34/0x3e0 net/sched/cls_api.c:774 tcf_block_put_ext.part.0+0x2a/0x80 net/sched/cls_api.c:1345 tcf_block_put_ext net/sched/cls_api.c:1343 [inline] tcf_block_put+0xbf/0x110 net/sched/cls_api.c:1358 sfb_destroy+0x37/0x80 net/sched/sch_sfb.c:467 qdisc_destroy+0x11f/0x630 net/sched/sch_generic.c:968 qdisc_put+0x85/0xa0 net/sched/sch_generic.c:995 sfb_change+0x3d8/0xe90 net/sched/sch_sfb.c:522 qdisc_change net/sched/sch_api.c:1321 [inline] tc_modify_qdisc+0xfcf/0x1c50 net/sched/sch_api.c:1623 rtnetlink_rcv_msg+0x463/0xb00 net/core/rtnetlink.c:5223 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5241 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x531/0x710 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x8a5/0xd60 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:637 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:657 ___sys_sendmsg+0x803/0x920 net/socket.c:2311 __sys_sendmsg+0x105/0x1d0 net/socket.c:2356 __do_sys_sendmsg net/socket.c:2365 [inline] __se_sys_sendmsg net/socket.c:2363 [inline] __x64_sys_sendmsg+0x78/0xb0 net/socket.c:2363 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x459a09 Code: fd b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 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 0f 83 cb b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007fe7c9c5dc78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000000459a09 RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000007 RBP: 000000000075bf20 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007fe7c9c5e6d4 R13: 00000000004c7933 R14: 00000000004dd328 R15: 00000000ffffffff BUG: sleeping function called from invalid context at kernel/locking/mutex.c:935 in_atomic(): 1, irqs_disabled(): 0, pid: 15674, name: syz-executor.4 INFO: lockdep is turned off. Preemption disabled at: [] spin_lock_bh include/linux/spinlock.h:343 [inline] [] sch_tree_lock include/net/sch_generic.h:544 [inline] [] sfb_change+0x257/0xe90 net/sched/sch_sfb.c:519 CPU: 1 PID: 15674 Comm: syz-executor.4 Tainted: G W 5.3.0+ #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x172/0x1f0 lib/dump_stack.c:113 ___might_sleep.cold+0x1be/0x1f7 kernel/sched/core.c:6798 __might_sleep+0x95/0x190 kernel/sched/core.c:6751 __mutex_lock_common kernel/locking/mutex.c:935 [inline] __mutex_lock+0xc5/0x13c0 kernel/locking/mutex.c:1103 mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1118 refcount_dec_and_mutex_lock lib/refcount.c:319 [inline] refcount_dec_and_mutex_lock+0x56/0x90 lib/refcount.c:314 __tcf_block_put+0x32/0x540 net/sched/cls_api.c:1124 tcf_block_put_ext.part.0+0x69/0x80 net/sched/cls_api.c:1348 tcf_block_put_ext net/sched/cls_api.c:1343 [inline] tcf_block_put+0xbf/0x110 net/sched/cls_api.c:1358 sfb_destroy+0x37/0x80 net/sched/sch_sfb.c:467 qdisc_destroy+0x11f/0x630 net/sched/sch_generic.c:968 qdisc_put+0x85/0xa0 net/sched/sch_generic.c:995 sfb_change+0x3d8/0xe90 net/sched/sch_sfb.c:522 qdisc_change net/sched/sch_api.c:1321 [inline] tc_modify_qdisc+0xfcf/0x1c50 net/sched/sch_api.c:1623 rtnetlink_rcv_msg+0x463/0xb00 net/core/rtnetlink.c:5223 netlink_rcv_skb+0x177/0x450 net/netlink/af_netlink.c:2477 rtnetlink_rcv+0x1d/0x30 net/core/rtnetlink.c:5241 netlink_unicast_kernel net/netlink/af_netlink.c:1302 [inline] netlink_unicast+0x531/0x710 net/netlink/af_netlink.c:1328 netlink_sendmsg+0x8a5/0xd60 net/netlink/af_netlink.c:1917 sock_sendmsg_nosec net/socket.c:637 [inline] sock_sendmsg+0xd7/0x130 net/socket.c:657 ___sys_sendmsg+0x803/0x920 net/socket.c:2311 __sys_sendmsg+0x105/0x1d0 net/socket.c:2356 __do_sys_sendmsg net/socket.c:2365 [inline] __se_sys_sendmsg net/socket.c:2363 [inline] __x64_sys_sendmsg+0x78/0xb0 net/socket.c:2363 do_syscall_64+0xfa/0x760 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x459a09 Code: fd b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 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 0f 83 cb b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007fe7c9c5dc78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 0000000000459a09 RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000007 RBP: 000000000075bf20 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007fe7c9c5e6d4 R13: 00000000004c7933 R14: 00000000004dd328 R15: 00000000ffffffff