BUG: sleeping function called from invalid context at drivers/tty/vt/vt.c:2599 in_atomic(): 1, irqs_disabled(): 1, pid: 15161, name: syz-executor.4 3 locks held by syz-executor.4/15161: #0: 00000000c4d45891 (&tty->ldisc_sem){++++}, at: tty_ldisc_ref_wait+0x22/0x80 drivers/tty/tty_ldisc.c:272 #1: 00000000a95262ac (&(&tty->flow_lock)->rlock){....}, at: spin_lock_irq include/linux/spinlock.h:354 [inline] #1: 00000000a95262ac (&(&tty->flow_lock)->rlock){....}, at: n_tty_ioctl_helper+0xcc/0x3a0 drivers/tty/tty_ioctl.c:914 #2: 00000000c4d45891 (&tty->ldisc_sem){++++}, at: tty_ldisc_ref+0x1d/0x80 drivers/tty/tty_ldisc.c:293 irq event stamp: 402 hardirqs last enabled at (401): [] do_syscall_64+0x21/0x620 arch/x86/entry/common.c:280 hardirqs last disabled at (402): [] __raw_spin_lock_irq include/linux/spinlock_api_smp.h:126 [inline] hardirqs last disabled at (402): [] _raw_spin_lock_irq+0x35/0x80 kernel/locking/spinlock.c:160 softirqs last enabled at (302): [] __do_softirq+0x678/0x980 kernel/softirq.c:318 softirqs last disabled at (267): [] invoke_softirq kernel/softirq.c:372 [inline] softirqs last disabled at (267): [] irq_exit+0x215/0x260 kernel/softirq.c:412 Preemption disabled at: [<0000000000000000>] (null) CPU: 1 PID: 15161 Comm: syz-executor.4 Not tainted 4.19.211-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/22/2022 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x1fc/0x2ef lib/dump_stack.c:118 ___might_sleep.cold+0x235/0x250 kernel/sched/core.c:6192 do_con_write+0x116/0x1d90 drivers/tty/vt/vt.c:2599 con_write+0x22/0xb0 drivers/tty/vt/vt.c:3163 n_hdlc_send_frames+0x278/0x470 drivers/tty/n_hdlc.c:403 n_hdlc_tty_wakeup+0xa0/0xc0 drivers/tty/n_hdlc.c:479 tty_wakeup+0xd4/0x110 drivers/tty/tty_io.c:534 __start_tty drivers/tty/tty_io.c:806 [inline] __start_tty+0x116/0x150 drivers/tty/tty_io.c:799 n_tty_ioctl_helper+0x348/0x3a0 drivers/tty/tty_ioctl.c:917 n_hdlc_tty_ioctl+0x102/0x350 drivers/tty/n_hdlc.c:783 tty_ioctl+0x65d/0x1630 drivers/tty/tty_io.c:2678 vfs_ioctl fs/ioctl.c:46 [inline] file_ioctl fs/ioctl.c:501 [inline] do_vfs_ioctl+0xcdb/0x12e0 fs/ioctl.c:688 ksys_ioctl+0x9b/0xc0 fs/ioctl.c:705 __do_sys_ioctl fs/ioctl.c:712 [inline] __se_sys_ioctl fs/ioctl.c:710 [inline] __x64_sys_ioctl+0x6f/0xb0 fs/ioctl.c:710 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x7fb565912279 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 b8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007fb564287168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 00007fb565a24f80 RCX: 00007fb565912279 RDX: 0000000000000001 RSI: 000000000000540a RDI: 0000000000000003 RBP: 00007fb56596c189 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007fffbbe3eaff R14: 00007fb564287300 R15: 0000000000022000 BUG: sleeping function called from invalid context at drivers/tty/vt/vt.c:2599 in_atomic(): 1, irqs_disabled(): 1, pid: 15194, name: syz-executor.0 3 locks held by syz-executor.0/15194: #0: 00000000d84047f8 (&tty->ldisc_sem){++++}, at: tty_ldisc_ref_wait+0x22/0x80 drivers/tty/tty_ldisc.c:272 #1: 000000002152a7f8 (&(&tty->flow_lock)->rlock){....}, at: spin_lock_irq include/linux/spinlock.h:354 [inline] #1: 000000002152a7f8 (&(&tty->flow_lock)->rlock){....}, at: n_tty_ioctl_helper+0xcc/0x3a0 drivers/tty/tty_ioctl.c:914 #2: 00000000d84047f8 (&tty->ldisc_sem){++++}, at: tty_ldisc_ref+0x1d/0x80 drivers/tty/tty_ldisc.c:293 irq event stamp: 696 hardirqs last enabled at (695): [] do_syscall_64+0x21/0x620 arch/x86/entry/common.c:280 hardirqs last disabled at (696): [] __raw_spin_lock_irq include/linux/spinlock_api_smp.h:126 [inline] hardirqs last disabled at (696): [] _raw_spin_lock_irq+0x35/0x80 kernel/locking/spinlock.c:160 softirqs last enabled at (0): [] copy_process.part.0+0x15b9/0x8260 kernel/fork.c:1856 softirqs last disabled at (0): [<0000000000000000>] (null) Preemption disabled at: [<0000000000000000>] (null) CPU: 1 PID: 15194 Comm: syz-executor.0 Tainted: G W 4.19.211-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/22/2022 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x1fc/0x2ef lib/dump_stack.c:118 ___might_sleep.cold+0x235/0x250 kernel/sched/core.c:6192 do_con_write+0x116/0x1d90 drivers/tty/vt/vt.c:2599 con_write+0x22/0xb0 drivers/tty/vt/vt.c:3163 n_hdlc_send_frames+0x278/0x470 drivers/tty/n_hdlc.c:403 n_hdlc_tty_wakeup+0xa0/0xc0 drivers/tty/n_hdlc.c:479 tty_wakeup+0xd4/0x110 drivers/tty/tty_io.c:534 __start_tty drivers/tty/tty_io.c:806 [inline] __start_tty+0x116/0x150 drivers/tty/tty_io.c:799 n_tty_ioctl_helper+0x348/0x3a0 drivers/tty/tty_ioctl.c:917 n_hdlc_tty_ioctl+0x102/0x350 drivers/tty/n_hdlc.c:783 tty_ioctl+0x65d/0x1630 drivers/tty/tty_io.c:2678 vfs_ioctl fs/ioctl.c:46 [inline] file_ioctl fs/ioctl.c:501 [inline] do_vfs_ioctl+0xcdb/0x12e0 fs/ioctl.c:688 ksys_ioctl+0x9b/0xc0 fs/ioctl.c:705 __do_sys_ioctl fs/ioctl.c:712 [inline] __se_sys_ioctl fs/ioctl.c:710 [inline] __x64_sys_ioctl+0x6f/0xb0 fs/ioctl.c:710 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x7f3a813c6279 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 b8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f3a7fd3b168 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 RAX: ffffffffffffffda RBX: 00007f3a814d8f80 RCX: 00007f3a813c6279 RDX: 0000000000000001 RSI: 000000000000540a RDI: 0000000000000003 RBP: 00007f3a81420189 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007ffe295d6a4f R14: 00007f3a7fd3b300 R15: 0000000000022000 BUG: scheduling while atomic: syz-executor.0/15194/0x00000002 3 locks held by syz-executor.0/15194: #0: 00000000d84047f8 (&tty->ldisc_sem){++++}, at: tty_ldisc_ref_wait+0x22/0x80 drivers/tty/tty_ldisc.c:272 #1: 000000002152a7f8 (&(&tty->flow_lock)->rlock){+.+.}, at: spin_lock_irq include/linux/spinlock.h:354 [inline] #1: 000000002152a7f8 (&(&tty->flow_lock)->rlock){+.+.}, at: n_tty_ioctl_helper+0xcc/0x3a0 drivers/tty/tty_ioctl.c:914 #2: 00000000d84047f8 (&tty->ldisc_sem){++++}, at: tty_ldisc_ref+0x1d/0x80 drivers/tty/tty_ldisc.c:293 Modules linked in: Preemption disabled at: [<0000000000000000>] (null)