================================ WARNING: inconsistent lock state 6.12.0-rc1-syzkaller-g2d8bce6e34be #0 Not tainted -------------------------------- inconsistent {SOFTIRQ-ON-W} -> {IN-SOFTIRQ-W} usage. kworker/u8:3/44 [HC0[0]:SC1[1]:HE1:SE0] takes: ffff0000ef48c1e0 (&pch->downl){+.?.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline] ffff0000ef48c1e0 (&pch->downl){+.?.}-{2:2}, at: ppp_channel_bridge_input drivers/net/ppp/ppp_generic.c:2272 [inline] ffff0000ef48c1e0 (&pch->downl){+.?.}-{2:2}, at: ppp_input+0x16c/0x854 drivers/net/ppp/ppp_generic.c:2304 {SOFTIRQ-ON-W} state was registered at: 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] ppp_channel_bridge_input drivers/net/ppp/ppp_generic.c:2272 [inline] ppp_input+0x16c/0x854 drivers/net/ppp/ppp_generic.c:2304 pppoe_rcv_core+0xfc/0x314 drivers/net/ppp/pppoe.c:379 sk_backlog_rcv include/net/sock.h:1113 [inline] __release_sock+0x1a8/0x3d8 net/core/sock.c:3072 release_sock+0x68/0x1b8 net/core/sock.c:3626 pppoe_sendmsg+0xc8/0x5d8 drivers/net/ppp/pppoe.c:903 sock_sendmsg_nosec net/socket.c:729 [inline] __sock_sendmsg net/socket.c:744 [inline] ____sys_sendmsg+0x56c/0x840 net/socket.c:2602 ___sys_sendmsg net/socket.c:2656 [inline] __sys_sendmmsg+0x318/0x7e0 net/socket.c:2742 __do_sys_sendmmsg net/socket.c:2771 [inline] __se_sys_sendmmsg net/socket.c:2768 [inline] __arm64_sys_sendmmsg+0xa0/0xbc net/socket.c:2768 __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:732 el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:750 el0t_64_sync+0x190/0x194 arch/arm64/kernel/entry.S:598 irq event stamp: 302642 hardirqs last enabled at (302642): [] __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:151 [inline] hardirqs last enabled at (302642): [] _raw_spin_unlock_irqrestore+0x38/0x98 kernel/locking/spinlock.c:194 hardirqs last disabled at (302641): [] __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:108 [inline] hardirqs last disabled at (302641): [] _raw_spin_lock_irqsave+0x2c/0x7c kernel/locking/spinlock.c:162 softirqs last enabled at (302096): [] spin_unlock_bh include/linux/spinlock.h:396 [inline] softirqs last enabled at (302096): [] batadv_nc_purge_paths+0x2f4/0x378 net/batman-adv/network-coding.c:471 softirqs last disabled at (302637): [] __do_softirq+0x14/0x20 kernel/softirq.c:588 other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&pch->downl); lock(&pch->downl); *** DEADLOCK *** 5 locks held by kworker/u8:3/44: #0: ffff0000c0031148 ((wq_completion)events_unbound){+.+.}-{0:0}, at: process_one_work+0x628/0x1600 kernel/workqueue.c:3203 #1: ffff800097fb7c20 ((work_completion)(&buf->work)){+.+.}-{0:0}, at: process_one_work+0x6bc/0x1600 kernel/workqueue.c:3203 #2: ffff0000ce45f8b8 (&buf->lock){+.+.}-{3:3}, at: flush_to_ldisc+0x48/0x6e4 drivers/tty/tty_buffer.c:467 #3: ffff0000f21d50a0 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref+0x28/0x9c drivers/tty/tty_ldisc.c:263 #4: ffff80008f9cf760 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x10/0x4c include/linux/rcupdate.h:336 stack backtrace: CPU: 0 UID: 0 PID: 44 Comm: kworker/u8:3 Not tainted 6.12.0-rc1-syzkaller-g2d8bce6e34be #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/06/2024 Workqueue: events_unbound flush_to_ldisc Call trace: dump_backtrace+0x1b8/0x1e4 arch/arm64/kernel/stacktrace.c:319 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:326 __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_usage_bug+0x6a4/0x9c0 kernel/locking/lockdep.c:4038 mark_lock_irq+0x980/0xd2c mark_lock+0x258/0x368 kernel/locking/lockdep.c:4725 __lock_acquire+0xf48/0x77c8 kernel/locking/lockdep.c:5156 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] ppp_channel_bridge_input drivers/net/ppp/ppp_generic.c:2272 [inline] ppp_input+0x16c/0x854 drivers/net/ppp/ppp_generic.c:2304 ppp_async_process+0x98/0x150 drivers/net/ppp/ppp_async.c:495 tasklet_action_common+0x318/0x3f4 kernel/softirq.c:784 tasklet_action+0x68/0x8c kernel/softirq.c:810 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:889 do_softirq_own_stack+0x20/0x2c arch/arm64/kernel/irq.c:86 invoke_softirq kernel/softirq.c:435 [inline] __irq_exit_rcu+0x1d8/0x434 kernel/softirq.c:637 irq_exit_rcu+0x14/0x84 kernel/softirq.c:649 __el1_irq arch/arm64/kernel/entry-common.c:549 [inline] el1_interrupt+0x38/0x68 arch/arm64/kernel/entry-common.c:563 el1h_64_irq_handler+0x18/0x24 arch/arm64/kernel/entry-common.c:568 el1h_64_irq+0x64/0x68 arch/arm64/kernel/entry.S:594 __daif_local_irq_restore arch/arm64/include/asm/irqflags.h:175 [inline] arch_local_irq_restore arch/arm64/include/asm/irqflags.h:195 [inline] __tasklet_schedule_common+0x13c/0x18c kernel/softirq.c:732 __tasklet_schedule+0x1c/0x28 kernel/softirq.c:737 tasklet_schedule include/linux/interrupt.h:719 [inline] ppp_asynctty_receive+0x16b8/0x186c drivers/net/ppp/ppp_async.c:345 tty_ldisc_receive_buf+0x12c/0x15c drivers/tty/tty_buffer.c:391 tty_port_default_receive_buf+0x74/0xac drivers/tty/tty_port.c:37 receive_buf drivers/tty/tty_buffer.c:445 [inline] flush_to_ldisc+0x284/0x6e4 drivers/tty/tty_buffer.c:495 process_one_work+0x7bc/0x1600 kernel/workqueue.c:3229 process_scheduled_works kernel/workqueue.c:3310 [inline] worker_thread+0x97c/0xeec kernel/workqueue.c:3391 kthread+0x288/0x310 kernel/kthread.c:389 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:860