syzbot


possible deadlock in ppp_input_error

Status: internal: reported on 2024/09/21 08:43
Subsystems: ppp
[Documentation on labels]
Fix commit: aec7291003df ppp: do not assume bh is held in ppp_channel_bridge_input()
Patched on: [ci-qemu-gce-upstream-auto ci-qemu-upstream ci-qemu-upstream-386 ci-qemu2-arm32 ci-qemu2-arm64 ci-qemu2-arm64-compat ci-qemu2-arm64-mte ci-snapshot-upstream-root ci-upstream-bpf-next-kasan-gce ci-upstream-gce-leak ci-upstream-kasan-badwrites-root ci-upstream-kasan-gce ci-upstream-kasan-gce-386 ci-upstream-kasan-gce-root ci-upstream-kasan-gce-selinux-root ci-upstream-kasan-gce-smack-root ci-upstream-kmsan-gce-386-root ci-upstream-kmsan-gce-root ci-upstream-net-kasan-gce ci-upstream-net-this-kasan-gce ci2-upstream-fs ci2-upstream-kcsan-gce], missing on: [ci-qemu-native-arm64-kvm ci-qemu2-riscv64 ci-upstream-bpf-kasan-gce ci-upstream-gce-arm64 ci-upstream-linux-next-kasan-gce-root ci2-upstream-usb]
First crash: 15d, last: 2d14h
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-6.1 possible deadlock in ppp_input_error 1 2d13h 2d13h 0/3 upstream: reported on 2024/10/03 21:22

Sample crash report:
========================================================
WARNING: possible irq lock inversion dependency detected
6.12.0-rc1-syzkaller-00046-g7ec462100ef9 #0 Not tainted
--------------------------------------------------------
ksoftirqd/0/16 just changed the state of lock:
ffff88805a44ca48 (&pch->upl){++.-}-{2:2}, at: ppp_input_error+0x60/0x1b0 drivers/net/ppp/ppp_generic.c:2344
but this lock took another, SOFTIRQ-unsafe lock in the past:
 (&pch->downl){+.+.}-{2:2}


and interrupts could create inverse lock ordering between them.


other info that might help us debug this:
Chain exists of:
  &pch->upl --> &ppp->wlock --> &pch->downl

 Possible interrupt unsafe locking scenario:

       CPU0                    CPU1
       ----                    ----
  lock(&pch->downl);
                               local_irq_disable();
                               lock(&pch->upl);
                               lock(&ppp->wlock);
  <Interrupt>
    lock(&pch->upl);

 *** DEADLOCK ***

no locks held by ksoftirqd/0/16.

the shortest dependencies between 2nd lock and 1st lock:
   -> (&pch->downl){+.+.}-{2:2} {
      HARDIRQ-ON-W at:
                          lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
                          __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]
                          ppp_channel_bridge_input drivers/net/ppp/ppp_generic.c:2272 [inline]
                          ppp_input+0x18b/0xa10 drivers/net/ppp/ppp_generic.c:2304
                          pppoe_rcv_core+0x117/0x310 drivers/net/ppp/pppoe.c:379
                          sk_backlog_rcv include/net/sock.h:1113 [inline]
                          __release_sock+0x243/0x350 net/core/sock.c:3072
                          release_sock+0x61/0x1f0 net/core/sock.c:3626
                          pppoe_sendmsg+0xd5/0x750 drivers/net/ppp/pppoe.c:903
                          sock_sendmsg_nosec net/socket.c:729 [inline]
                          __sock_sendmsg+0x221/0x270 net/socket.c:744
                          ____sys_sendmsg+0x52a/0x7e0 net/socket.c:2602
                          ___sys_sendmsg net/socket.c:2656 [inline]
                          __sys_sendmmsg+0x3ab/0x730 net/socket.c:2742
                          __do_sys_sendmmsg net/socket.c:2771 [inline]
                          __se_sys_sendmmsg net/socket.c:2768 [inline]
                          __x64_sys_sendmmsg+0xa0/0xb0 net/socket.c:2768
                          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:5825
                          __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]
                          ppp_channel_bridge_input drivers/net/ppp/ppp_generic.c:2272 [inline]
                          ppp_input+0x18b/0xa10 drivers/net/ppp/ppp_generic.c:2304
                          pppoe_rcv_core+0x117/0x310 drivers/net/ppp/pppoe.c:379
                          sk_backlog_rcv include/net/sock.h:1113 [inline]
                          __release_sock+0x243/0x350 net/core/sock.c:3072
                          release_sock+0x61/0x1f0 net/core/sock.c:3626
                          pppoe_sendmsg+0xd5/0x750 drivers/net/ppp/pppoe.c:903
                          sock_sendmsg_nosec net/socket.c:729 [inline]
                          __sock_sendmsg+0x221/0x270 net/socket.c:744
                          ____sys_sendmsg+0x52a/0x7e0 net/socket.c:2602
                          ___sys_sendmsg net/socket.c:2656 [inline]
                          __sys_sendmmsg+0x3ab/0x730 net/socket.c:2742
                          __do_sys_sendmmsg net/socket.c:2771 [inline]
                          __se_sys_sendmmsg net/socket.c:2768 [inline]
                          __x64_sys_sendmmsg+0xa0/0xb0 net/socket.c:2768
                          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:5825
                         __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]
                         ppp_channel_bridge_input drivers/net/ppp/ppp_generic.c:2272 [inline]
                         ppp_input+0x18b/0xa10 drivers/net/ppp/ppp_generic.c:2304
                         pppoe_rcv_core+0x117/0x310 drivers/net/ppp/pppoe.c:379
                         sk_backlog_rcv include/net/sock.h:1113 [inline]
                         __release_sock+0x243/0x350 net/core/sock.c:3072
                         release_sock+0x61/0x1f0 net/core/sock.c:3626
                         pppoe_sendmsg+0xd5/0x750 drivers/net/ppp/pppoe.c:903
                         sock_sendmsg_nosec net/socket.c:729 [inline]
                         __sock_sendmsg+0x221/0x270 net/socket.c:744
                         ____sys_sendmsg+0x52a/0x7e0 net/socket.c:2602
                         ___sys_sendmsg net/socket.c:2656 [inline]
                         __sys_sendmmsg+0x3ab/0x730 net/socket.c:2742
                         __do_sys_sendmmsg net/socket.c:2771 [inline]
                         __se_sys_sendmmsg net/socket.c:2768 [inline]
                         __x64_sys_sendmmsg+0xa0/0xb0 net/socket.c:2768
                         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: [<ffffffff9a733f80>] ppp_register_net_channel.__key.1+0x0/0x20
    ... acquired at:
   lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
   __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]
   ppp_connect_channel+0x194/0x650 drivers/net/ppp/ppp_generic.c:3485
   ppp_ioctl+0xdd4/0x1cd0 drivers/net/ppp/ppp_generic.c:761
   vfs_ioctl fs/ioctl.c:51 [inline]
   __do_sys_ioctl fs/ioctl.c:907 [inline]
   __se_sys_ioctl+0xf9/0x170 fs/ioctl.c:893
   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

  -> (&ppp->rlock){+...}-{2:2} {
     HARDIRQ-ON-W at:
                        lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
                        __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]
                        ppp_get_stats64+0x33/0x290 drivers/net/ppp/ppp_generic.c:1534
                        dev_get_stats+0xad/0xa00 net/core/dev.c:10937
                        rtnl_fill_stats+0x47/0x880 net/core/rtnetlink.c:1268
                        rtnl_fill_ifinfo+0x18da/0x2270 net/core/rtnetlink.c:1909
                        rtmsg_ifinfo_build_skb+0x18a/0x260 net/core/rtnetlink.c:4079
                        rtmsg_ifinfo_event net/core/rtnetlink.c:4112 [inline]
                        rtmsg_ifinfo+0x91/0x1b0 net/core/rtnetlink.c:4121
                        register_netdevice+0x1774/0x1b00 net/core/dev.c:10534
                        ppp_unit_register drivers/net/ppp/ppp_generic.c:1219 [inline]
                        ppp_dev_configure+0x883/0xb10 drivers/net/ppp/ppp_generic.c:1275
                        ppp_create_interface drivers/net/ppp/ppp_generic.c:3348 [inline]
                        ppp_unattached_ioctl drivers/net/ppp/ppp_generic.c:1060 [inline]
                        ppp_ioctl+0x797/0x1cd0 drivers/net/ppp/ppp_generic.c:733
                        vfs_ioctl fs/ioctl.c:51 [inline]
                        __do_sys_ioctl fs/ioctl.c:907 [inline]
                        __se_sys_ioctl+0xf9/0x170 fs/ioctl.c:893
                        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:5825
                       __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]
                       ppp_get_stats64+0x33/0x290 drivers/net/ppp/ppp_generic.c:1534
                       dev_get_stats+0xad/0xa00 net/core/dev.c:10937
                       rtnl_fill_stats+0x47/0x880 net/core/rtnetlink.c:1268
                       rtnl_fill_ifinfo+0x18da/0x2270 net/core/rtnetlink.c:1909
                       rtmsg_ifinfo_build_skb+0x18a/0x260 net/core/rtnetlink.c:4079
                       rtmsg_ifinfo_event net/core/rtnetlink.c:4112 [inline]
                       rtmsg_ifinfo+0x91/0x1b0 net/core/rtnetlink.c:4121
                       register_netdevice+0x1774/0x1b00 net/core/dev.c:10534
                       ppp_unit_register drivers/net/ppp/ppp_generic.c:1219 [inline]
                       ppp_dev_configure+0x883/0xb10 drivers/net/ppp/ppp_generic.c:1275
                       ppp_create_interface drivers/net/ppp/ppp_generic.c:3348 [inline]
                       ppp_unattached_ioctl drivers/net/ppp/ppp_generic.c:1060 [inline]
                       ppp_ioctl+0x797/0x1cd0 drivers/net/ppp/ppp_generic.c:733
                       vfs_ioctl fs/ioctl.c:51 [inline]
                       __do_sys_ioctl fs/ioctl.c:907 [inline]
                       __se_sys_ioctl+0xf9/0x170 fs/ioctl.c:893
                       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: [<ffffffff9a7340a0>] ppp_dev_configure.__key+0x0/0x20
   ... acquired at:
   lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
   __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]
   ppp_dev_uninit+0x6c/0x1a0 drivers/net/ppp/ppp_generic.c:1572
   unregister_netdevice_many_notify+0x1735/0x1da0 net/core/dev.c:11421
   unregister_netdevice_many net/core/dev.c:11461 [inline]
   unregister_netdevice_queue+0x303/0x370 net/core/dev.c:11335
   unregister_netdevice include/linux/netdevice.h:3118 [inline]
   ppp_release+0xed/0x1f0 drivers/net/ppp/ppp_generic.c:410
   __fput+0x23f/0x880 fs/file_table.c:431
   task_work_run+0x24f/0x310 kernel/task_work.c:228
   resume_user_mode_work include/linux/resume_user_mode.h:50 [inline]
   exit_to_user_mode_loop kernel/entry/common.c:114 [inline]
   exit_to_user_mode_prepare include/linux/entry-common.h:328 [inline]
   __syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
   syscall_exit_to_user_mode+0x168/0x370 kernel/entry/common.c:218
   do_syscall_64+0x100/0x230 arch/x86/entry/common.c:89
   entry_SYSCALL_64_after_hwframe+0x77/0x7f

 -> (&ppp->wlock){+...}-{2:2} {
    HARDIRQ-ON-W at:
                      lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
                      __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]
                      ppp_get_stats64+0xc3/0x290 drivers/net/ppp/ppp_generic.c:1539
                      dev_get_stats+0xad/0xa00 net/core/dev.c:10937
                      rtnl_fill_stats+0x47/0x880 net/core/rtnetlink.c:1268
                      rtnl_fill_ifinfo+0x18da/0x2270 net/core/rtnetlink.c:1909
                      rtmsg_ifinfo_build_skb+0x18a/0x260 net/core/rtnetlink.c:4079
                      rtmsg_ifinfo_event net/core/rtnetlink.c:4112 [inline]
                      rtmsg_ifinfo+0x91/0x1b0 net/core/rtnetlink.c:4121
                      register_netdevice+0x1774/0x1b00 net/core/dev.c:10534
                      ppp_unit_register drivers/net/ppp/ppp_generic.c:1219 [inline]
                      ppp_dev_configure+0x883/0xb10 drivers/net/ppp/ppp_generic.c:1275
                      ppp_create_interface drivers/net/ppp/ppp_generic.c:3348 [inline]
                      ppp_unattached_ioctl drivers/net/ppp/ppp_generic.c:1060 [inline]
                      ppp_ioctl+0x797/0x1cd0 drivers/net/ppp/ppp_generic.c:733
                      vfs_ioctl fs/ioctl.c:51 [inline]
                      __do_sys_ioctl fs/ioctl.c:907 [inline]
                      __se_sys_ioctl+0xf9/0x170 fs/ioctl.c:893
                      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:5825
                     __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]
                     ppp_get_stats64+0xc3/0x290 drivers/net/ppp/ppp_generic.c:1539
                     dev_get_stats+0xad/0xa00 net/core/dev.c:10937
                     rtnl_fill_stats+0x47/0x880 net/core/rtnetlink.c:1268
                     rtnl_fill_ifinfo+0x18da/0x2270 net/core/rtnetlink.c:1909
                     rtmsg_ifinfo_build_skb+0x18a/0x260 net/core/rtnetlink.c:4079
                     rtmsg_ifinfo_event net/core/rtnetlink.c:4112 [inline]
                     rtmsg_ifinfo+0x91/0x1b0 net/core/rtnetlink.c:4121
                     register_netdevice+0x1774/0x1b00 net/core/dev.c:10534
                     ppp_unit_register drivers/net/ppp/ppp_generic.c:1219 [inline]
                     ppp_dev_configure+0x883/0xb10 drivers/net/ppp/ppp_generic.c:1275
                     ppp_create_interface drivers/net/ppp/ppp_generic.c:3348 [inline]
                     ppp_unattached_ioctl drivers/net/ppp/ppp_generic.c:1060 [inline]
                     ppp_ioctl+0x797/0x1cd0 drivers/net/ppp/ppp_generic.c:733
                     vfs_ioctl fs/ioctl.c:51 [inline]
                     __do_sys_ioctl fs/ioctl.c:907 [inline]
                     __se_sys_ioctl+0xf9/0x170 fs/ioctl.c:893
                     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: [<ffffffff9a7340c0>] ppp_dev_configure.__key.67+0x0/0x20
  ... acquired at:
   lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
   __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]
   ppp_connect_channel+0x174/0x650 drivers/net/ppp/ppp_generic.c:3484
   ppp_ioctl+0xdd4/0x1cd0 drivers/net/ppp/ppp_generic.c:761
   vfs_ioctl fs/ioctl.c:51 [inline]
   __do_sys_ioctl fs/ioctl.c:907 [inline]
   __se_sys_ioctl+0xf9/0x170 fs/ioctl.c:893
   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

-> (&pch->upl){++.-}-{2:2} {
   HARDIRQ-ON-W at:
                    lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
                    __raw_write_lock_bh include/linux/rwlock_api_smp.h:202 [inline]
                    _raw_write_lock_bh+0x35/0x50 kernel/locking/spinlock.c:334
                    ppp_bridge_channels+0x32/0x4c0 drivers/net/ppp/ppp_generic.c:643
                    ppp_ioctl+0xe8f/0x1cd0 drivers/net/ppp/ppp_generic.c:783
                    vfs_ioctl fs/ioctl.c:51 [inline]
                    __do_sys_ioctl fs/ioctl.c:907 [inline]
                    __se_sys_ioctl+0xf9/0x170 fs/ioctl.c:893
                    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
   HARDIRQ-ON-R at:
                    lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
                    __raw_read_lock_bh include/linux/rwlock_api_smp.h:176 [inline]
                    _raw_read_lock_bh+0x3d/0x50 kernel/locking/spinlock.c:252
                    ppp_input+0x3dc/0xa10 drivers/net/ppp/ppp_generic.c:2307
                    pppoe_rcv_core+0x117/0x310 drivers/net/ppp/pppoe.c:379
                    sk_backlog_rcv include/net/sock.h:1113 [inline]
                    __release_sock+0x243/0x350 net/core/sock.c:3072
                    release_sock+0x61/0x1f0 net/core/sock.c:3626
                    pppoe_sendmsg+0xd5/0x750 drivers/net/ppp/pppoe.c:903
                    sock_sendmsg_nosec net/socket.c:729 [inline]
                    __sock_sendmsg+0x221/0x270 net/socket.c:744
                    ____sys_sendmsg+0x52a/0x7e0 net/socket.c:2602
                    ___sys_sendmsg net/socket.c:2656 [inline]
                    __sys_sendmmsg+0x3ab/0x730 net/socket.c:2742
                    __do_sys_sendmmsg net/socket.c:2771 [inline]
                    __se_sys_sendmmsg net/socket.c:2768 [inline]
                    __x64_sys_sendmmsg+0xa0/0xb0 net/socket.c:2768
                    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-R at:
                    lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
                    __raw_read_lock_bh include/linux/rwlock_api_smp.h:176 [inline]
                    _raw_read_lock_bh+0x3d/0x50 kernel/locking/spinlock.c:252
                    ppp_input_error+0x60/0x1b0 drivers/net/ppp/ppp_generic.c:2344
                    ppp_sync_process+0x82/0x160 drivers/net/ppp/ppp_synctty.c:486
                    tasklet_action_common+0x321/0x4d0 kernel/softirq.c:784
                    handle_softirqs+0x2c5/0x980 kernel/softirq.c:554
                    run_ksoftirqd+0xca/0x130 kernel/softirq.c:927
                    smpboot_thread_fn+0x544/0xa30 kernel/smpboot.c:164
                    kthread+0x2f0/0x390 kernel/kthread.c:389
                    ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147
                    ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
   INITIAL USE at:
                   lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
                   __raw_write_lock_bh include/linux/rwlock_api_smp.h:202 [inline]
                   _raw_write_lock_bh+0x35/0x50 kernel/locking/spinlock.c:334
                   ppp_bridge_channels+0x32/0x4c0 drivers/net/ppp/ppp_generic.c:643
                   ppp_ioctl+0xe8f/0x1cd0 drivers/net/ppp/ppp_generic.c:783
                   vfs_ioctl fs/ioctl.c:51 [inline]
                   __do_sys_ioctl fs/ioctl.c:907 [inline]
                   __se_sys_ioctl+0xf9/0x170 fs/ioctl.c:893
                   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 READ USE at:
                        lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
                        __raw_read_lock_bh include/linux/rwlock_api_smp.h:176 [inline]
                        _raw_read_lock_bh+0x3d/0x50 kernel/locking/spinlock.c:252
                        ppp_input+0x3dc/0xa10 drivers/net/ppp/ppp_generic.c:2307
                        pppoe_rcv_core+0x117/0x310 drivers/net/ppp/pppoe.c:379
                        sk_backlog_rcv include/net/sock.h:1113 [inline]
                        __release_sock+0x243/0x350 net/core/sock.c:3072
                        release_sock+0x61/0x1f0 net/core/sock.c:3626
                        pppoe_sendmsg+0xd5/0x750 drivers/net/ppp/pppoe.c:903
                        sock_sendmsg_nosec net/socket.c:729 [inline]
                        __sock_sendmsg+0x221/0x270 net/socket.c:744
                        ____sys_sendmsg+0x52a/0x7e0 net/socket.c:2602
                        ___sys_sendmsg net/socket.c:2656 [inline]
                        __sys_sendmmsg+0x3ab/0x730 net/socket.c:2742
                        __do_sys_sendmmsg net/socket.c:2771 [inline]
                        __se_sys_sendmmsg net/socket.c:2768 [inline]
                        __x64_sys_sendmmsg+0xa0/0xb0 net/socket.c:2768
                        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: [<ffffffff9a733fa0>] ppp_register_net_channel.__key.3+0x0/0x20
 ... acquired at:
   mark_lock+0x223/0x360 kernel/locking/lockdep.c:4725
   __lock_acquire+0xbf9/0x2050 kernel/locking/lockdep.c:5156
   lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
   __raw_read_lock_bh include/linux/rwlock_api_smp.h:176 [inline]
   _raw_read_lock_bh+0x3d/0x50 kernel/locking/spinlock.c:252
   ppp_input_error+0x60/0x1b0 drivers/net/ppp/ppp_generic.c:2344
   ppp_sync_process+0x82/0x160 drivers/net/ppp/ppp_synctty.c:486
   tasklet_action_common+0x321/0x4d0 kernel/softirq.c:784
   handle_softirqs+0x2c5/0x980 kernel/softirq.c:554
   run_ksoftirqd+0xca/0x130 kernel/softirq.c:927
   smpboot_thread_fn+0x544/0xa30 kernel/smpboot.c:164
   kthread+0x2f0/0x390 kernel/kthread.c:389
   ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147
   ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244


stack backtrace:
CPU: 0 UID: 0 PID: 16 Comm: ksoftirqd/0 Not tainted 6.12.0-rc1-syzkaller-00046-g7ec462100ef9 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
Call Trace:
 <TASK>
 __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:4121
 mark_lock_irq+0x80c/0xc20 kernel/locking/lockdep.c:4290
 mark_lock+0x223/0x360 kernel/locking/lockdep.c:4725
 __lock_acquire+0xbf9/0x2050 kernel/locking/lockdep.c:5156
 lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825
 __raw_read_lock_bh include/linux/rwlock_api_smp.h:176 [inline]
 _raw_read_lock_bh+0x3d/0x50 kernel/locking/spinlock.c:252
 ppp_input_error+0x60/0x1b0 drivers/net/ppp/ppp_generic.c:2344
 ppp_sync_process+0x82/0x160 drivers/net/ppp/ppp_synctty.c:486
 tasklet_action_common+0x321/0x4d0 kernel/softirq.c:784
 handle_softirqs+0x2c5/0x980 kernel/softirq.c:554
 run_ksoftirqd+0xca/0x130 kernel/softirq.c:927
 smpboot_thread_fn+0x544/0xa30 kernel/smpboot.c:164
 kthread+0x2f0/0x390 kernel/kthread.c:389
 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>

Crashes (61):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/10/03 20:06 upstream 7ec462100ef9 d7906eff .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/10/03 17:05 upstream 7ec462100ef9 d7906eff .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/10/03 11:44 upstream 7ec462100ef9 d7906eff .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/10/02 08:02 upstream e32cde8d2bd7 ea2b66a6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/10/01 16:28 upstream e32cde8d2bd7 ea2b66a6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/10/01 05:31 upstream e32cde8d2bd7 bbd4e0a4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/30 16:01 upstream 9852d85ec9d4 bbd4e0a4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/30 10:19 upstream 9852d85ec9d4 ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/30 10:19 upstream 9852d85ec9d4 ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/30 10:12 upstream 9852d85ec9d4 ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/29 23:58 upstream e7ed34365879 ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/29 20:14 upstream e7ed34365879 ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/29 12:44 upstream 3efc57369a0c ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/28 21:45 upstream 3efc57369a0c ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/28 06:18 upstream ad46e8f95e93 440b26ec .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/28 06:13 upstream ad46e8f95e93 440b26ec .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/28 06:11 upstream ad46e8f95e93 440b26ec .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/27 19:29 upstream e477dba5442c 2b1784d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/27 15:20 upstream 075dbe9f6e3c 2b1784d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/27 15:19 upstream 075dbe9f6e3c 2b1784d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/27 15:15 upstream 075dbe9f6e3c 2b1784d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/27 15:14 upstream 075dbe9f6e3c 2b1784d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/26 06:05 upstream aa486552a110 0d19f247 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root possible deadlock in ppp_input_error
2024/09/25 09:33 upstream 684a64bf32b6 349a68c4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/24 23:23 upstream 97d8894b6f4c 5643e0e9 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/24 13:15 upstream abf2050f51fd 5643e0e9 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/24 11:55 upstream a430d95c5efa 89298aad .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in ppp_input_error
2024/09/23 13:48 upstream de5cb0dcb74c 89298aad .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/23 09:54 upstream de5cb0dcb74c 6f888b75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/23 02:18 upstream af9c191ac2a0 6f888b75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/22 05:50 upstream a430d95c5efa 6f888b75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root possible deadlock in ppp_input_error
2024/09/22 00:37 upstream 88264981f208 6f888b75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/21 23:44 upstream 88264981f208 6f888b75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/09/21 08:42 upstream 1868f9d0260e 6f888b75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce possible deadlock in ppp_input_error
2024/10/03 14:28 upstream 7ec462100ef9 d7906eff .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/10/03 13:11 upstream 7ec462100ef9 d7906eff .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/10/03 02:16 upstream f23aa4c0761a a4c7fd36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/10/01 02:24 upstream e32cde8d2bd7 bbd4e0a4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/29 20:10 upstream e7ed34365879 ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/29 04:36 upstream 3efc57369a0c ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/28 23:05 upstream 3efc57369a0c ba29ff75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/28 02:27 upstream e477dba5442c 2b1784d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/28 01:50 upstream e477dba5442c 2b1784d6 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/27 06:32 upstream 075dbe9f6e3c 9314348a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/26 06:35 upstream aa486552a110 0d19f247 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/25 23:15 upstream aa486552a110 349a68c4 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/24 16:06 upstream abf2050f51fd 5643e0e9 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/24 04:15 upstream abf2050f51fd 89298aad .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/23 02:02 upstream af9c191ac2a0 6f888b75 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 possible deadlock in ppp_input_error
2024/09/27 11:47 upstream 075dbe9f6e3c 2b1784d6 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream possible deadlock in ppp_input_error
2024/09/27 11:46 upstream 075dbe9f6e3c 2b1784d6 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream possible deadlock in ppp_input_error
2024/09/27 07:02 linux-next 92fc9636d147 9314348a .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in ppp_input_error
* Struck through repros no longer work on HEAD.