======================================================== WARNING: possible irq lock inversion dependency detected 5.14.0-rc7-syzkaller #0 Not tainted -------------------------------------------------------- syz-executor.1/8459 just changed the state of lock: ffff8880297684b0 (&new->fa_lock){.+.-}-{2:2}, at: kill_fasync_rcu fs/fcntl.c:1012 [inline] ffff8880297684b0 (&new->fa_lock){.+.-}-{2:2}, at: kill_fasync fs/fcntl.c:1033 [inline] ffff8880297684b0 (&new->fa_lock){.+.-}-{2:2}, at: kill_fasync+0x132/0x460 fs/fcntl.c:1026 but this lock was taken by another, HARDIRQ-safe lock in the past: (&timer->lock){-.-.}-{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(&new->fa_lock); local_irq_disable(); lock(&timer->lock); lock(&new->fa_lock); lock(&timer->lock); *** DEADLOCK *** 5 locks held by syz-executor.1/8459: #0: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at: __skb_unlink include/linux/skbuff.h:2094 [inline] #0: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at: __skb_dequeue include/linux/skbuff.h:2109 [inline] #0: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at: process_backlog+0x250/0x6c0 net/core/dev.c:6490 #1: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at: ip6_input_finish+0x0/0x170 include/linux/skbuff.h:2544 #2: ffff8880275e4d20 (slock-AF_INET6){+.-.}-{2:2}, at: spin_lock include/linux/spinlock.h:354 [inline] #2: ffff8880275e4d20 (slock-AF_INET6){+.-.}-{2:2}, at: sctp_rcv+0xd9d/0x2fb0 net/sctp/input.c:231 #3: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at: sk_stream_wspace include/net/sock.h:959 [inline] #3: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at: sctp_wspace net/sctp/socket.c:110 [inline] #3: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at: __sctp_write_space+0x263/0x5b0 net/sctp/socket.c:9035 #4: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at: kill_fasync+0x3d/0x460 fs/fcntl.c:1031 the shortest dependencies between 2nd lock and 1st lock: -> (&timer->lock){-.-.}-{2:2} { IN-HARDIRQ-W at: lock_acquire kernel/locking/lockdep.c:5625 [inline] lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline] _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:151 spin_lock include/linux/spinlock.h:354 [inline] snd_hrtimer_callback+0x4f/0x3c0 sound/core/hrtimer.c:38 __run_hrtimer kernel/time/hrtimer.c:1537 [inline] __hrtimer_run_queues+0x609/0xe50 kernel/time/hrtimer.c:1601 hrtimer_interrupt+0x330/0xa00 kernel/time/hrtimer.c:1663 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline] __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1106 sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1100 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 get_current arch/x86/include/asm/current.h:15 [inline] __sanitizer_cov_trace_pc+0x1c/0x60 kernel/kcov.c:196 inet_twsk_purge+0x9c/0x7d0 net/ipv4/inet_timewait_sock.c:265 ops_exit_list+0x10d/0x160 net/core/net_namespace.c:178 cleanup_net+0x4ea/0xb10 net/core/net_namespace.c:595 process_one_work+0x98d/0x1630 kernel/workqueue.c:2276 worker_thread+0x658/0x11f0 kernel/workqueue.c:2422 kthread+0x3e5/0x4d0 kernel/kthread.c:319 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295 IN-SOFTIRQ-W at: lock_acquire kernel/locking/lockdep.c:5625 [inline] lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline] _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:151 spin_lock include/linux/spinlock.h:354 [inline] snd_hrtimer_callback+0x4f/0x3c0 sound/core/hrtimer.c:38 __run_hrtimer kernel/time/hrtimer.c:1537 [inline] __hrtimer_run_queues+0x609/0xe50 kernel/time/hrtimer.c:1601 hrtimer_interrupt+0x330/0xa00 kernel/time/hrtimer.c:1663 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1089 [inline] __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1106 sysvec_apic_timer_interrupt+0x40/0xc0 arch/x86/kernel/apic/apic.c:1100 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 __raw_spin_unlock_irq include/linux/spinlock_api_smp.h:169 [inline] _raw_spin_unlock_irq+0x25/0x40 kernel/locking/spinlock.c:199 __run_timers.part.0+0x37a/0xa20 kernel/time/timer.c:1736 __run_timers kernel/time/timer.c:1715 [inline] run_timer_softirq+0xb3/0x1d0 kernel/time/timer.c:1747 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x16e/0x1c0 kernel/softirq.c:636 irq_exit_rcu+0x5/0x20 kernel/softirq.c:648 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1100 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 get_current arch/x86/include/asm/current.h:15 [inline] finish_task_switch.isra.0+0x23c/0xa50 kernel/sched/core.c:4555 context_switch kernel/sched/core.c:4684 [inline] __schedule+0x942/0x26f0 kernel/sched/core.c:5938 preempt_schedule_common+0x45/0xc0 kernel/sched/core.c:6098 preempt_schedule_thunk+0x16/0x18 arch/x86/entry/thunk_64.S:35 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:161 [inline] _raw_spin_unlock_irqrestore+0x57/0x70 kernel/locking/spinlock.c:191 spin_unlock_irqrestore include/linux/spinlock.h:409 [inline] snd_seq_prioq_cell_out+0x1dc/0x360 sound/core/seq/seq_prioq.c:238 snd_seq_check_queue+0x1a6/0x3f0 sound/core/seq/seq_queue.c:262 snd_seq_enqueue_event+0x1ed/0x3e0 sound/core/seq/seq_queue.c:334 snd_seq_client_enqueue_event.constprop.0+0x230/0x440 sound/core/seq/seq_clientmgr.c:976 snd_seq_kernel_client_enqueue+0x191/0x1e0 sound/core/seq/seq_clientmgr.c:2298 insert_queue sound/core/seq/oss/seq_oss_rw.c:174 [inline] snd_seq_oss_write+0x5d7/0x780 sound/core/seq/oss/seq_oss_rw.c:135 odev_write+0x55/0x90 sound/core/seq/oss/seq_oss.c:168 vfs_write+0x28e/0xa40 fs/read_write.c:603 ksys_write+0x12d/0x250 fs/read_write.c:658 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae INITIAL USE at: lock_acquire kernel/locking/lockdep.c:5625 [inline] lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590 __raw_spin_lock_irq include/linux/spinlock_api_smp.h:128 [inline] _raw_spin_lock_irq+0x32/0x50 kernel/locking/spinlock.c:167 spin_lock_irq include/linux/spinlock.h:379 [inline] snd_timer_close_locked+0x63/0xbb0 sound/core/timer.c:396 snd_timer_close+0x87/0xf0 sound/core/timer.c:463 snd_seq_timer_close+0x8c/0xe0 sound/core/seq/seq_timer.c:326 queue_delete+0x4a/0xa0 sound/core/seq/seq_queue.c:134 snd_seq_queue_client_leave+0x37/0x1a0 sound/core/seq/seq_queue.c:555 seq_free_client1.part.0+0x10a/0x260 sound/core/seq/seq_clientmgr.c:280 seq_free_client1 sound/core/seq/seq_clientmgr.c:273 [inline] seq_free_client+0x7b/0xf0 sound/core/seq/seq_clientmgr.c:301 snd_seq_release+0x4d/0xe0 sound/core/seq/seq_clientmgr.c:382 __fput+0x288/0x920 fs/file_table.c:280 task_work_run+0xdd/0x1a0 kernel/task_work.c:164 tracehook_notify_resume include/linux/tracehook.h:189 [inline] exit_to_user_mode_loop kernel/entry/common.c:175 [inline] exit_to_user_mode_prepare+0x27e/0x290 kernel/entry/common.c:209 __syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline] syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:302 do_syscall_64+0x42/0xb0 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x44/0xae } ... key at: [] __key.12+0x0/0x40 ... acquired at: __raw_read_lock include/linux/rwlock_api_smp.h:149 [inline] _raw_read_lock+0x5b/0x70 kernel/locking/spinlock.c:223 kill_fasync_rcu fs/fcntl.c:1012 [inline] kill_fasync fs/fcntl.c:1033 [inline] kill_fasync+0x132/0x460 fs/fcntl.c:1026 snd_timer_user_ccallback+0x298/0x330 sound/core/timer.c:1387 snd_timer_notify1+0x11c/0x3b0 sound/core/timer.c:516 snd_timer_start1+0x4d4/0x800 sound/core/timer.c:578 snd_timer_start sound/core/timer.c:697 [inline] snd_timer_start sound/core/timer.c:690 [inline] snd_timer_user_start.isra.0+0x1e3/0x260 sound/core/timer.c:1985 __snd_timer_user_ioctl.isra.0+0xda8/0x24c0 sound/core/timer.c:2108 snd_timer_user_ioctl+0x77/0xb0 sound/core/timer.c:2129 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:1069 [inline] __se_sys_ioctl fs/ioctl.c:1055 [inline] __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:1055 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae -> (&new->fa_lock){.+.-}-{2:2} { HARDIRQ-ON-R at: lock_acquire kernel/locking/lockdep.c:5625 [inline] lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590 __raw_read_lock include/linux/rwlock_api_smp.h:149 [inline] _raw_read_lock+0x36/0x70 kernel/locking/spinlock.c:223 kill_fasync_rcu fs/fcntl.c:1012 [inline] kill_fasync fs/fcntl.c:1033 [inline] kill_fasync+0x132/0x460 fs/fcntl.c:1026 sock_wake_async+0xd2/0x160 net/socket.c:1354 __sctp_write_space+0x3a0/0x5b0 net/sctp/socket.c:9055 sctp_wake_up_waiters net/sctp/socket.c:9094 [inline] sctp_wfree+0x4f1/0x950 net/sctp/socket.c:9138 skb_release_head_state+0x9f/0x280 net/core/skbuff.c:728 skb_release_all net/core/skbuff.c:739 [inline] __kfree_skb net/core/skbuff.c:755 [inline] consume_skb net/core/skbuff.c:911 [inline] consume_skb+0x89/0x160 net/core/skbuff.c:905 sctp_chunk_destroy net/sctp/sm_make_chunk.c:1503 [inline] sctp_chunk_put+0x1c0/0x2d0 net/sctp/sm_make_chunk.c:1530 sctp_datamsg_destroy net/sctp/chunk.c:111 [inline] sctp_datamsg_put+0x12d/0x5d0 net/sctp/chunk.c:128 sctp_chunk_free+0x42/0x60 net/sctp/sm_make_chunk.c:1515 sctp_outq_flush_data+0xefc/0x26c0 net/sctp/outqueue.c:1082 sctp_outq_flush net/sctp/outqueue.c:1207 [inline] sctp_outq_uncork+0x178/0x200 net/sctp/outqueue.c:758 sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1812 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1195 [inline] sctp_do_sm+0x745/0x4ed0 net/sctp/sm_sideeffect.c:1166 sctp_assoc_bh_rcv+0x386/0x6c0 net/sctp/associola.c:1054 sctp_inq_push+0x1da/0x270 net/sctp/inqueue.c:80 sctp_rcv+0xf3b/0x2fb0 net/sctp/input.c:256 sctp6_rcv+0x38/0x60 net/sctp/ipv6.c:1109 ip6_protocol_deliver_rcu+0x2e9/0x17f0 net/ipv6/ip6_input.c:422 ip6_input_finish+0x62/0x170 net/ipv6/ip6_input.c:463 NF_HOOK include/linux/netfilter.h:307 [inline] NF_HOOK include/linux/netfilter.h:301 [inline] ip6_input+0x9c/0xd0 net/ipv6/ip6_input.c:472 dst_input include/net/dst.h:458 [inline] ip6_rcv_finish net/ipv6/ip6_input.c:76 [inline] NF_HOOK include/linux/netfilter.h:307 [inline] NF_HOOK include/linux/netfilter.h:301 [inline] ipv6_rcv+0x28c/0x3c0 net/ipv6/ip6_input.c:297 __netif_receive_skb_one_core+0x114/0x180 net/core/dev.c:5498 __netif_receive_skb+0x24/0x1b0 net/core/dev.c:5612 process_backlog+0x2a5/0x6c0 net/core/dev.c:6492 __napi_poll+0xaf/0x440 net/core/dev.c:7047 napi_poll net/core/dev.c:7114 [inline] net_rx_action+0x801/0xb40 net/core/dev.c:7201 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x16e/0x1c0 kernel/softirq.c:636 irq_exit_rcu+0x5/0x20 kernel/softirq.c:648 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1100 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:161 [inline] _raw_spin_unlock_irqrestore+0x38/0x70 kernel/locking/spinlock.c:191 do_wait+0x79c/0xce0 kernel/exit.c:1539 kernel_wait4+0x14c/0x260 kernel/exit.c:1677 __do_sys_wait4+0x13f/0x150 kernel/exit.c:1705 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae IN-SOFTIRQ-R at: lock_acquire kernel/locking/lockdep.c:5625 [inline] lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590 __raw_read_lock include/linux/rwlock_api_smp.h:149 [inline] _raw_read_lock+0x36/0x70 kernel/locking/spinlock.c:223 kill_fasync_rcu fs/fcntl.c:1012 [inline] kill_fasync fs/fcntl.c:1033 [inline] kill_fasync+0x132/0x460 fs/fcntl.c:1026 sock_wake_async+0xd2/0x160 net/socket.c:1354 __sctp_write_space+0x3a0/0x5b0 net/sctp/socket.c:9055 sctp_wake_up_waiters net/sctp/socket.c:9094 [inline] sctp_wfree+0x4f1/0x950 net/sctp/socket.c:9138 skb_release_head_state+0x9f/0x280 net/core/skbuff.c:728 skb_release_all net/core/skbuff.c:739 [inline] __kfree_skb net/core/skbuff.c:755 [inline] consume_skb net/core/skbuff.c:911 [inline] consume_skb+0x89/0x160 net/core/skbuff.c:905 sctp_chunk_destroy net/sctp/sm_make_chunk.c:1503 [inline] sctp_chunk_put+0x1c0/0x2d0 net/sctp/sm_make_chunk.c:1530 sctp_datamsg_destroy net/sctp/chunk.c:111 [inline] sctp_datamsg_put+0x12d/0x5d0 net/sctp/chunk.c:128 sctp_chunk_free+0x42/0x60 net/sctp/sm_make_chunk.c:1515 sctp_outq_flush_data+0xefc/0x26c0 net/sctp/outqueue.c:1082 sctp_outq_flush net/sctp/outqueue.c:1207 [inline] sctp_outq_uncork+0x178/0x200 net/sctp/outqueue.c:758 sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1812 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1195 [inline] sctp_do_sm+0x745/0x4ed0 net/sctp/sm_sideeffect.c:1166 sctp_assoc_bh_rcv+0x386/0x6c0 net/sctp/associola.c:1054 sctp_inq_push+0x1da/0x270 net/sctp/inqueue.c:80 sctp_rcv+0xf3b/0x2fb0 net/sctp/input.c:256 sctp6_rcv+0x38/0x60 net/sctp/ipv6.c:1109 ip6_protocol_deliver_rcu+0x2e9/0x17f0 net/ipv6/ip6_input.c:422 ip6_input_finish+0x62/0x170 net/ipv6/ip6_input.c:463 NF_HOOK include/linux/netfilter.h:307 [inline] NF_HOOK include/linux/netfilter.h:301 [inline] ip6_input+0x9c/0xd0 net/ipv6/ip6_input.c:472 dst_input include/net/dst.h:458 [inline] ip6_rcv_finish net/ipv6/ip6_input.c:76 [inline] NF_HOOK include/linux/netfilter.h:307 [inline] NF_HOOK include/linux/netfilter.h:301 [inline] ipv6_rcv+0x28c/0x3c0 net/ipv6/ip6_input.c:297 __netif_receive_skb_one_core+0x114/0x180 net/core/dev.c:5498 __netif_receive_skb+0x24/0x1b0 net/core/dev.c:5612 process_backlog+0x2a5/0x6c0 net/core/dev.c:6492 __napi_poll+0xaf/0x440 net/core/dev.c:7047 napi_poll net/core/dev.c:7114 [inline] net_rx_action+0x801/0xb40 net/core/dev.c:7201 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x16e/0x1c0 kernel/softirq.c:636 irq_exit_rcu+0x5/0x20 kernel/softirq.c:648 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1100 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:161 [inline] _raw_spin_unlock_irqrestore+0x38/0x70 kernel/locking/spinlock.c:191 do_wait+0x79c/0xce0 kernel/exit.c:1539 kernel_wait4+0x14c/0x260 kernel/exit.c:1677 __do_sys_wait4+0x13f/0x150 kernel/exit.c:1705 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae INITIAL USE at: lock_acquire kernel/locking/lockdep.c:5625 [inline] lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590 __raw_write_lock_irq include/linux/rwlock_api_smp.h:196 [inline] _raw_write_lock_irq+0x32/0x50 kernel/locking/spinlock.c:311 fasync_remove_entry+0xb6/0x1f0 fs/fcntl.c:890 fasync_helper+0x9e/0xb0 fs/fcntl.c:993 __fput+0x712/0x920 fs/file_table.c:277 task_work_run+0xdd/0x1a0 kernel/task_work.c:164 tracehook_notify_resume include/linux/tracehook.h:189 [inline] exit_to_user_mode_loop kernel/entry/common.c:175 [inline] exit_to_user_mode_prepare+0x27e/0x290 kernel/entry/common.c:209 __syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline] syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:302 do_syscall_64+0x42/0xb0 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x44/0xae INITIAL READ USE at: lock_acquire kernel/locking/lockdep.c:5625 [inline] lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590 __raw_read_lock include/linux/rwlock_api_smp.h:149 [inline] _raw_read_lock+0x5b/0x70 kernel/locking/spinlock.c:223 kill_fasync_rcu fs/fcntl.c:1012 [inline] kill_fasync fs/fcntl.c:1033 [inline] kill_fasync+0x132/0x460 fs/fcntl.c:1026 snd_timer_user_ccallback+0x298/0x330 sound/core/timer.c:1387 snd_timer_notify1+0x11c/0x3b0 sound/core/timer.c:516 snd_timer_start1+0x4d4/0x800 sound/core/timer.c:578 snd_timer_start sound/core/timer.c:697 [inline] snd_timer_start sound/core/timer.c:690 [inline] snd_timer_user_start.isra.0+0x1e3/0x260 sound/core/timer.c:1985 __snd_timer_user_ioctl.isra.0+0xda8/0x24c0 sound/core/timer.c:2108 snd_timer_user_ioctl+0x77/0xb0 sound/core/timer.c:2129 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:1069 [inline] __se_sys_ioctl fs/ioctl.c:1055 [inline] __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:1055 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae } ... key at: [] __key.0+0x0/0x40 ... acquired at: mark_usage kernel/locking/lockdep.c:4494 [inline] __lock_acquire+0x123a/0x54a0 kernel/locking/lockdep.c:4969 lock_acquire kernel/locking/lockdep.c:5625 [inline] lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590 __raw_read_lock include/linux/rwlock_api_smp.h:149 [inline] _raw_read_lock+0x36/0x70 kernel/locking/spinlock.c:223 kill_fasync_rcu fs/fcntl.c:1012 [inline] kill_fasync fs/fcntl.c:1033 [inline] kill_fasync+0x132/0x460 fs/fcntl.c:1026 sock_wake_async+0xd2/0x160 net/socket.c:1354 __sctp_write_space+0x3a0/0x5b0 net/sctp/socket.c:9055 sctp_wake_up_waiters net/sctp/socket.c:9094 [inline] sctp_wfree+0x4f1/0x950 net/sctp/socket.c:9138 skb_release_head_state+0x9f/0x280 net/core/skbuff.c:728 skb_release_all net/core/skbuff.c:739 [inline] __kfree_skb net/core/skbuff.c:755 [inline] consume_skb net/core/skbuff.c:911 [inline] consume_skb+0x89/0x160 net/core/skbuff.c:905 sctp_chunk_destroy net/sctp/sm_make_chunk.c:1503 [inline] sctp_chunk_put+0x1c0/0x2d0 net/sctp/sm_make_chunk.c:1530 sctp_datamsg_destroy net/sctp/chunk.c:111 [inline] sctp_datamsg_put+0x12d/0x5d0 net/sctp/chunk.c:128 sctp_chunk_free+0x42/0x60 net/sctp/sm_make_chunk.c:1515 sctp_outq_flush_data+0xefc/0x26c0 net/sctp/outqueue.c:1082 sctp_outq_flush net/sctp/outqueue.c:1207 [inline] sctp_outq_uncork+0x178/0x200 net/sctp/outqueue.c:758 sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1812 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1195 [inline] sctp_do_sm+0x745/0x4ed0 net/sctp/sm_sideeffect.c:1166 sctp_assoc_bh_rcv+0x386/0x6c0 net/sctp/associola.c:1054 sctp_inq_push+0x1da/0x270 net/sctp/inqueue.c:80 sctp_rcv+0xf3b/0x2fb0 net/sctp/input.c:256 sctp6_rcv+0x38/0x60 net/sctp/ipv6.c:1109 ip6_protocol_deliver_rcu+0x2e9/0x17f0 net/ipv6/ip6_input.c:422 ip6_input_finish+0x62/0x170 net/ipv6/ip6_input.c:463 NF_HOOK include/linux/netfilter.h:307 [inline] NF_HOOK include/linux/netfilter.h:301 [inline] ip6_input+0x9c/0xd0 net/ipv6/ip6_input.c:472 dst_input include/net/dst.h:458 [inline] ip6_rcv_finish net/ipv6/ip6_input.c:76 [inline] NF_HOOK include/linux/netfilter.h:307 [inline] NF_HOOK include/linux/netfilter.h:301 [inline] ipv6_rcv+0x28c/0x3c0 net/ipv6/ip6_input.c:297 __netif_receive_skb_one_core+0x114/0x180 net/core/dev.c:5498 __netif_receive_skb+0x24/0x1b0 net/core/dev.c:5612 process_backlog+0x2a5/0x6c0 net/core/dev.c:6492 __napi_poll+0xaf/0x440 net/core/dev.c:7047 napi_poll net/core/dev.c:7114 [inline] net_rx_action+0x801/0xb40 net/core/dev.c:7201 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x16e/0x1c0 kernel/softirq.c:636 irq_exit_rcu+0x5/0x20 kernel/softirq.c:648 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1100 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:161 [inline] _raw_spin_unlock_irqrestore+0x38/0x70 kernel/locking/spinlock.c:191 do_wait+0x79c/0xce0 kernel/exit.c:1539 kernel_wait4+0x14c/0x260 kernel/exit.c:1677 __do_sys_wait4+0x13f/0x150 kernel/exit.c:1705 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae stack backtrace: CPU: 0 PID: 8459 Comm: syz-executor.1 Not tainted 5.14.0-rc7-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:88 [inline] dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:105 print_irq_inversion_bug kernel/locking/lockdep.c:203 [inline] check_usage_backwards kernel/locking/lockdep.c:4066 [inline] mark_lock_irq kernel/locking/lockdep.c:4156 [inline] mark_lock.cold+0x1d/0x8e kernel/locking/lockdep.c:4593 mark_usage kernel/locking/lockdep.c:4494 [inline] __lock_acquire+0x123a/0x54a0 kernel/locking/lockdep.c:4969 lock_acquire kernel/locking/lockdep.c:5625 [inline] lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5590 __raw_read_lock include/linux/rwlock_api_smp.h:149 [inline] _raw_read_lock+0x36/0x70 kernel/locking/spinlock.c:223 kill_fasync_rcu fs/fcntl.c:1012 [inline] kill_fasync fs/fcntl.c:1033 [inline] kill_fasync+0x132/0x460 fs/fcntl.c:1026 sock_wake_async+0xd2/0x160 net/socket.c:1354 __sctp_write_space+0x3a0/0x5b0 net/sctp/socket.c:9055 sctp_wake_up_waiters net/sctp/socket.c:9094 [inline] sctp_wfree+0x4f1/0x950 net/sctp/socket.c:9138 skb_release_head_state+0x9f/0x280 net/core/skbuff.c:728 skb_release_all net/core/skbuff.c:739 [inline] __kfree_skb net/core/skbuff.c:755 [inline] consume_skb net/core/skbuff.c:911 [inline] consume_skb+0x89/0x160 net/core/skbuff.c:905 sctp_chunk_destroy net/sctp/sm_make_chunk.c:1503 [inline] sctp_chunk_put+0x1c0/0x2d0 net/sctp/sm_make_chunk.c:1530 sctp_datamsg_destroy net/sctp/chunk.c:111 [inline] sctp_datamsg_put+0x12d/0x5d0 net/sctp/chunk.c:128 sctp_chunk_free+0x42/0x60 net/sctp/sm_make_chunk.c:1515 sctp_outq_flush_data+0xefc/0x26c0 net/sctp/outqueue.c:1082 sctp_outq_flush net/sctp/outqueue.c:1207 [inline] sctp_outq_uncork+0x178/0x200 net/sctp/outqueue.c:758 sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1812 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1195 [inline] sctp_do_sm+0x745/0x4ed0 net/sctp/sm_sideeffect.c:1166 sctp_assoc_bh_rcv+0x386/0x6c0 net/sctp/associola.c:1054 sctp_inq_push+0x1da/0x270 net/sctp/inqueue.c:80 sctp_rcv+0xf3b/0x2fb0 net/sctp/input.c:256 sctp6_rcv+0x38/0x60 net/sctp/ipv6.c:1109 ip6_protocol_deliver_rcu+0x2e9/0x17f0 net/ipv6/ip6_input.c:422 ip6_input_finish+0x62/0x170 net/ipv6/ip6_input.c:463 NF_HOOK include/linux/netfilter.h:307 [inline] NF_HOOK include/linux/netfilter.h:301 [inline] ip6_input+0x9c/0xd0 net/ipv6/ip6_input.c:472 dst_input include/net/dst.h:458 [inline] ip6_rcv_finish net/ipv6/ip6_input.c:76 [inline] NF_HOOK include/linux/netfilter.h:307 [inline] NF_HOOK include/linux/netfilter.h:301 [inline] ipv6_rcv+0x28c/0x3c0 net/ipv6/ip6_input.c:297 __netif_receive_skb_one_core+0x114/0x180 net/core/dev.c:5498 __netif_receive_skb+0x24/0x1b0 net/core/dev.c:5612 process_backlog+0x2a5/0x6c0 net/core/dev.c:6492 __napi_poll+0xaf/0x440 net/core/dev.c:7047 napi_poll net/core/dev.c:7114 [inline] net_rx_action+0x801/0xb40 net/core/dev.c:7201 __do_softirq+0x29b/0x9c2 kernel/softirq.c:558 invoke_softirq kernel/softirq.c:432 [inline] __irq_exit_rcu+0x16e/0x1c0 kernel/softirq.c:636 irq_exit_rcu+0x5/0x20 kernel/softirq.c:648 sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1100 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638 RIP: 0010:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:161 [inline] RIP: 0010:_raw_spin_unlock_irqrestore+0x38/0x70 kernel/locking/spinlock.c:191 Code: 74 24 10 e8 5a fa 2d f8 48 89 ef e8 02 70 2e f8 81 e3 00 02 00 00 75 25 9c 58 f6 c4 02 75 2d 48 85 db 74 01 fb bf 01 00 00 00 c3 4d 22 f8 65 8b 05 bc c8 d4 76 85 c0 74 0a 5b 5d c3 e8 a0 aa RSP: 0018:ffffc9000171fc78 EFLAGS: 00000206 RAX: 0000000000000006 RBX: 0000000000000200 RCX: 1ffffffff1ad8ac9 RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000001 RBP: ffff8880184b5b20 R08: 0000000000000001 R09: 0000000000000001 R10: ffffffff817bd228 R11: 0000000000000000 R12: 0000000000000000 R13: ffff888018d654c0 R14: 0000000000000000 R15: ffff888018d65a60 do_wait+0x79c/0xce0 kernel/exit.c:1539 kernel_wait4+0x14c/0x260 kernel/exit.c:1677 __do_sys_wait4+0x13f/0x150 kernel/exit.c:1705 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae RIP: 0033:0x464a97 Code: 89 7c 24 10 48 89 4c 24 18 e8 d5 44 02 00 4c 8b 54 24 18 8b 54 24 14 41 89 c0 48 8b 74 24 08 8b 7c 24 10 b8 3d 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 31 44 89 c7 89 44 24 10 e8 05 45 02 00 8b 44 RSP: 002b:00007ffcf7f71610 EFLAGS: 00000293 ORIG_RAX: 000000000000003d RAX: ffffffffffffffda RBX: 0000000000000060 RCX: 0000000000464a97 RDX: 0000000040000001 RSI: 00007ffcf7f716ac RDI: 00000000ffffffff RBP: 00007ffcf7f716ac R08: 0000000000000000 R09: 00007ffcf7f82080 R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000032 R13: 000000000004b48d R14: 000000000000000b R15: 00007ffcf7f71710 ---------------- Code disassembly (best guess): 0: 74 24 je 0x26 2: 10 e8 adc %ch,%al 4: 5a pop %rdx 5: fa cli 6: 2d f8 48 89 ef sub $0xef8948f8,%eax b: e8 02 70 2e f8 callq 0xf82e7012 10: 81 e3 00 02 00 00 and $0x200,%ebx 16: 75 25 jne 0x3d 18: 9c pushfq 19: 58 pop %rax 1a: f6 c4 02 test $0x2,%ah 1d: 75 2d jne 0x4c 1f: 48 85 db test %rbx,%rbx 22: 74 01 je 0x25 24: fb sti 25: bf 01 00 00 00 mov $0x1,%edi * 2a: e8 c3 4d 22 f8 callq 0xf8224df2 <-- trapping instruction 2f: 65 8b 05 bc c8 d4 76 mov %gs:0x76d4c8bc(%rip),%eax # 0x76d4c8f2 36: 85 c0 test %eax,%eax 38: 74 0a je 0x44 3a: 5b pop %rbx 3b: 5d pop %rbp 3c: c3 retq 3d: e8 .byte 0xe8 3e: a0 .byte 0xa0 3f: aa stos %al,%es:(%rdi)