From: syzbot <syzbot+8328573e4d0514392471@syzkaller.appspotmail.com>
To: andrew@lunn.ch, davem@davemloft.net, edumazet@kernel.org,
kuba@kernel.org, linux-kernel@vger.kernel.org,
linux-x25@vger.kernel.org, ms@dev.tdt.de,
netdev@vger.kernel.org, pabeni@redhat.com,
syzkaller-bugs@googlegroups.com
Subject: Re: [syzbot] [x25?] possible deadlock in lapb_connect_request
Date: Sat, 17 Oct 2026 20:51:32 -0700 [thread overview]
Message-ID: <6ad44244.7f4e89eb.3d59aa.00ac.GAE@google.com> (raw)
In-Reply-To: <6ad2e6e0.6814cce4.34c49f.0026.GAE@google.com>
syzbot has found a reproducer for the following issue on:
HEAD commit: 58161ead29e5 Merge tag 'drm-fixes-2026-10-17' of https://g..
git tree: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
console output: https://syzkaller.appspot.com/x/log.txt?x=1212098e580000
kernel config: https://syzkaller.appspot.com/x/.config?x=129d675874dbf896
dashboard link: https://syzkaller.appspot.com/bug?extid=8328573e4d0514392471
compiler: gcc (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1612098e580000
IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+8328573e4d0514392471@syzkaller.appspotmail.com
======================================================
WARNING: possible circular locking dependency detected
syzkaller #0 Not tainted
------------------------------------------------------
syz-executor333/5939 is trying to acquire lock:
ffffffff91f49b18 (lapb_list_lock){++..}-{3:3}, at: lapb_devtostruct net/lapb/lapb_iface.c:102 [inline]
ffffffff91f49b18 (lapb_list_lock){++..}-{3:3}, at: lapb_connect_request+0x26/0x1a0 net/lapb/lapb_iface.c:287
but task is already holding lock:
ffff88807a54cf00 (&lapbeth->up_lock){+...}-{3:3}, at: spin_lock_bh include/linux/spinlock.h:353 [inline]
ffff88807a54cf00 (&lapbeth->up_lock){+...}-{3:3}, at: lapbeth_xmit+0x24/0x250 drivers/net/wan/lapbether.c:191
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #3 (&lapbeth->up_lock){+...}-{3:3}:
lock_acquire kernel/locking/lockdep.c:5942 [inline]
lock_acquire+0x1d1/0x380 kernel/locking/lockdep.c:5899
__raw_spin_lock_bh include/linux/spinlock_api_smp.h:182 [inline]
_raw_spin_lock_bh+0x33/0x40 kernel/locking/spinlock.c:205
spin_lock_bh include/linux/spinlock.h:353 [inline]
lapbeth_xmit+0x24/0x250 drivers/net/wan/lapbether.c:191
__netdev_start_xmit include/linux/netdevice.h:5432 [inline]
netdev_start_xmit include/linux/netdevice.h:5441 [inline]
xmit_one net/core/dev.c:3953 [inline]
dev_hard_start_xmit+0x121/0x760 net/core/dev.c:3969
__dev_queue_xmit+0x1c25/0x4a40 net/core/dev.c:4958
dev_queue_xmit include/linux/netdevice.h:3464 [inline]
tx+0xc4/0x130 drivers/block/aoe/aoenet.c:62
kthread+0x1d8/0x3c0 drivers/block/aoe/aoecmd.c:1241
kthread+0x373/0x450 kernel/kthread.c:436
ret_from_fork+0x730/0xd60 arch/x86/kernel/process.c:158
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
-> #2 (_xmit_X25#2){+...}-{3:3}:
lock_acquire kernel/locking/lockdep.c:5942 [inline]
lock_acquire+0x1d1/0x380 kernel/locking/lockdep.c:5899
__raw_spin_lock include/linux/spinlock_api_smp.h:190 [inline]
_raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:173
spin_lock include/linux/spinlock.h:347 [inline]
__netif_tx_lock include/linux/netdevice.h:4841 [inline]
__dev_queue_xmit+0x1ac6/0x4a40 net/core/dev.c:4952
neigh_output include/net/neighbour.h:560 [inline]
ip_finish_output2+0x851/0x2400 net/ipv4/ip_output.c:236
__ip_finish_output.part.0+0x444/0x6f0 net/ipv4/ip_output.c:314
__ip_finish_output net/ipv4/ip_output.c:302 [inline]
ip_finish_output net/ipv4/ip_output.c:324 [inline]
NF_HOOK_COND include/linux/netfilter.h:314 [inline]
ip_output+0x39b/0xc10 net/ipv4/ip_output.c:437
dst_output include/net/dst.h:471 [inline]
ip_local_out+0x193/0x1f0 net/ipv4/ip_output.c:131
iptunnel_xmit+0x722/0xd30 net/ipv4/ip_tunnel_core.c:97
ip_tunnel_xmit+0x1b91/0x3210 net/ipv4/ip_tunnel.c:848
__gre_xmit+0x91a/0xc90 net/ipv4/ip_gre.c:488
gre_tap_xmit+0x44e/0x700 net/ipv4/ip_gre.c:783
__netdev_start_xmit include/linux/netdevice.h:5432 [inline]
netdev_start_xmit include/linux/netdevice.h:5441 [inline]
xmit_one net/core/dev.c:3953 [inline]
dev_hard_start_xmit+0x121/0x760 net/core/dev.c:3969
sch_direct_xmit+0x1b2/0xc70 net/sched/sch_generic.c:372
__dev_xmit_skb net/core/dev.c:4277 [inline]
__dev_queue_xmit+0x2812/0x4a40 net/core/dev.c:4916
lapb_data_transmit+0x96/0xc0 net/lapb/lapb_iface.c:447
lapb_transmit_buffer+0xce/0x3a0 net/lapb/lapb_out.c:149
lapb_send_control+0x1ce/0x330 net/lapb/lapb_subr.c:251
lapb_establish_data_link+0xeb/0x110 net/lapb/lapb_out.c:163
lapb_device_event+0x315/0x580 net/lapb/lapb_iface.c:512
notifier_call_chain+0x99/0x3f0 kernel/notifier.c:85
call_netdevice_notifiers_info+0xbe/0x110 net/core/dev.c:2275
call_netdevice_notifiers_extack net/core/dev.c:2313 [inline]
call_netdevice_notifiers net/core/dev.c:2327 [inline]
__dev_notify_flags+0x22c/0x4b0 net/core/dev.c:9896
netif_change_flags+0x108/0x160 net/core/dev.c:9925
dev_change_flags+0xba/0x260 net/core/dev_api.c:68
devinet_ioctl+0x110b/0x1f10 net/ipv4/devinet.c:1199
inet_ioctl+0x3aa/0x3f0 net/ipv4/af_inet.c:1009
sock_do_ioctl+0x118/0x280 net/socket.c:1325
sock_ioctl+0x599/0x6b0 net/socket.c:1446
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:597 [inline]
__se_sys_ioctl fs/ioctl.c:583 [inline]
__x64_sys_ioctl+0x18e/0x210 fs/ioctl.c:583
do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
do_syscall_64+0x123/0x790 arch/x86/entry/syscall_64.c:84
entry_SYSCALL_64_after_hwframe+0x77/0x7f
-> #1 (&lapb->lock){+.-.}-{3:3}:
lock_acquire kernel/locking/lockdep.c:5942 [inline]
lock_acquire+0x1d1/0x380 kernel/locking/lockdep.c:5899
__raw_spin_lock_bh include/linux/spinlock_api_smp.h:182 [inline]
_raw_spin_lock_bh+0x33/0x40 kernel/locking/spinlock.c:205
spin_lock_bh include/linux/spinlock.h:353 [inline]
lapb_unregister+0x112/0x400 net/lapb/lapb_iface.c:187
lapbeth_close+0x56/0x90 drivers/net/wan/lapbether.c:350
__dev_close_many+0x312/0x710 net/core/dev.c:1798
__dev_close net/core/dev.c:1811 [inline]
__dev_change_flags+0x307/0x850 net/core/dev.c:9853
netif_change_flags+0x8d/0x160 net/core/dev.c:9920
dev_change_flags+0xba/0x260 net/core/dev_api.c:68
devinet_ioctl+0x110b/0x1f10 net/ipv4/devinet.c:1199
inet_ioctl+0x3aa/0x3f0 net/ipv4/af_inet.c:1009
sock_do_ioctl+0x118/0x280 net/socket.c:1325
sock_ioctl+0x599/0x6b0 net/socket.c:1446
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:597 [inline]
__se_sys_ioctl fs/ioctl.c:583 [inline]
__x64_sys_ioctl+0x18e/0x210 fs/ioctl.c:583
do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
do_syscall_64+0x123/0x790 arch/x86/entry/syscall_64.c:84
entry_SYSCALL_64_after_hwframe+0x77/0x7f
-> #0 (lapb_list_lock){++..}-{3:3}:
check_prev_add+0xeb/0xe60 kernel/locking/lockdep.c:3209
check_prevs_add kernel/locking/lockdep.c:3328 [inline]
validate_chain kernel/locking/lockdep.c:3952 [inline]
__lock_acquire+0x1528/0x1f40 kernel/locking/lockdep.c:5288
lock_acquire kernel/locking/lockdep.c:5942 [inline]
lock_acquire+0x1d1/0x380 kernel/locking/lockdep.c:5899
__raw_read_lock_bh include/linux/rwlock_api_smp.h:192 [inline]
_raw_read_lock_bh+0x3f/0x70 kernel/locking/spinlock.c:287
lapb_devtostruct net/lapb/lapb_iface.c:102 [inline]
lapb_connect_request+0x26/0x1a0 net/lapb/lapb_iface.c:287
lapbeth_xmit+0x1cb/0x250 drivers/net/wan/lapbether.c:205
__netdev_start_xmit include/linux/netdevice.h:5432 [inline]
netdev_start_xmit include/linux/netdevice.h:5441 [inline]
xmit_one net/core/dev.c:3953 [inline]
dev_hard_start_xmit+0x121/0x760 net/core/dev.c:3969
__dev_queue_xmit+0x1c25/0x4a40 net/core/dev.c:4958
dev_queue_xmit include/linux/netdevice.h:3464 [inline]
packet_xmit+0x243/0x310 net/packet/af_packet.c:277
packet_snd net/packet/af_packet.c:3149 [inline]
packet_sendmsg+0x32ee/0x5040 net/packet/af_packet.c:3181
sock_sendmsg_nosec net/socket.c:800 [inline]
__sock_sendmsg net/socket.c:815 [inline]
__sys_sendto+0x48b/0x4e0 net/socket.c:2281
__do_sys_sendto net/socket.c:2288 [inline]
__se_sys_sendto net/socket.c:2284 [inline]
__x64_sys_sendto+0xe0/0x1c0 net/socket.c:2284
do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
do_syscall_64+0x123/0x790 arch/x86/entry/syscall_64.c:84
entry_SYSCALL_64_after_hwframe+0x77/0x7f
other info that might help us debug this:
Chain exists of:
lapb_list_lock --> _xmit_X25#2 --> &lapbeth->up_lock
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(&lapbeth->up_lock);
lock(_xmit_X25#2);
lock(&lapbeth->up_lock);
rlock(lapb_list_lock);
*** DEADLOCK ***
locks held by syz-executor333/5939: 3, last CPU#0:
#0: ffffffff8fdec580 (rcu_read_lock_bh){....}-{1:3}, at: local_bh_disable include/linux/bottom_half.h:20 [inline]
#0: ffffffff8fdec580 (rcu_read_lock_bh){....}-{1:3}, at: rcu_read_lock_bh include/linux/rcupdate.h:902 [inline]
#0: ffffffff8fdec580 (rcu_read_lock_bh){....}-{1:3}, at: __dev_queue_xmit+0x296/0x4a40 net/core/dev.c:4872
#1: ffff888023beb558 (_xmit_X25#2){+...}-{3:3}, at: spin_lock include/linux/spinlock.h:347 [inline]
#1: ffff888023beb558 (_xmit_X25#2){+...}-{3:3}, at: __netif_tx_lock include/linux/netdevice.h:4841 [inline]
#1: ffff888023beb558 (_xmit_X25#2){+...}-{3:3}, at: __dev_queue_xmit+0x1ac6/0x4a40 net/core/dev.c:4952
#2: ffff88807a54cf00 (&lapbeth->up_lock){+...}-{3:3}, at: spin_lock_bh include/linux/spinlock.h:353 [inline]
#2: ffff88807a54cf00 (&lapbeth->up_lock){+...}-{3:3}, at: lapbeth_xmit+0x24/0x250 drivers/net/wan/lapbether.c:191
stack backtrace:
CPU: 0 UID: 0 PID: 5939 Comm: syz-executor333 Not tainted syzkaller #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/05/2026
Call Trace:
<TASK>
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120
print_circular_bug.cold+0x178/0x1be kernel/locking/lockdep.c:2087
check_noncircular+0x146/0x160 kernel/locking/lockdep.c:2219
check_prev_add+0xeb/0xe60 kernel/locking/lockdep.c:3209
check_prevs_add kernel/locking/lockdep.c:3328 [inline]
validate_chain kernel/locking/lockdep.c:3952 [inline]
__lock_acquire+0x1528/0x1f40 kernel/locking/lockdep.c:5288
lock_acquire kernel/locking/lockdep.c:5942 [inline]
lock_acquire+0x1d1/0x380 kernel/locking/lockdep.c:5899
__raw_read_lock_bh include/linux/rwlock_api_smp.h:192 [inline]
_raw_read_lock_bh+0x3f/0x70 kernel/locking/spinlock.c:287
lapb_devtostruct net/lapb/lapb_iface.c:102 [inline]
lapb_connect_request+0x26/0x1a0 net/lapb/lapb_iface.c:287
lapbeth_xmit+0x1cb/0x250 drivers/net/wan/lapbether.c:205
__netdev_start_xmit include/linux/netdevice.h:5432 [inline]
netdev_start_xmit include/linux/netdevice.h:5441 [inline]
xmit_one net/core/dev.c:3953 [inline]
dev_hard_start_xmit+0x121/0x760 net/core/dev.c:3969
__dev_queue_xmit+0x1c25/0x4a40 net/core/dev.c:4958
dev_queue_xmit include/linux/netdevice.h:3464 [inline]
packet_xmit+0x243/0x310 net/packet/af_packet.c:277
packet_snd net/packet/af_packet.c:3149 [inline]
packet_sendmsg+0x32ee/0x5040 net/packet/af_packet.c:3181
sock_sendmsg_nosec net/socket.c:800 [inline]
__sock_sendmsg net/socket.c:815 [inline]
__sys_sendto+0x48b/0x4e0 net/socket.c:2281
__do_sys_sendto net/socket.c:2288 [inline]
__se_sys_sendto net/socket.c:2284 [inline]
__x64_sys_sendto+0xe0/0x1c0 net/socket.c:2284
do_syscall_x64 arch/x86/entry/syscall_64.c:61 [inline]
do_syscall_64+0x123/0x790 arch/x86/entry/syscall_64.c:84
entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7ff79ae040b7
Code: 48 89 fa 4c 89 df e8 98 1d 00 00 8b 93 08 03 00 00 59 5e 48 83 f8 fc 74 1a 5b c3 0f 1f 84 00 00 00 00 00 48 8b 44 24 10 0f 05 <5b> c3 0f 1f 80 00 00 00 00 83 e2 39 83 fa 08 75 de e8 23 ff ff ff
RSP: 002b:00007ffe8b1e5860 EFLAGS: 00000202 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 0000555590b13400 RCX: 00007ff79ae040b7
RDX: 0000000000000001 RSI: 00007ffe8b1e58bf RDI: 0000000000000005
RBP: 0000000000000004 R08: 00007ffe8b1e58c0 R09: 0000000000000014
R10: 0000000000000000 R11: 0000000000000202 R12: 0000000000000003
R13: 0000000000000005 R14: 00007ff79ae3d059 R15: 00007ff79ae3d044
</TASK>
---
If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.
prev parent reply other threads:[~2026-10-18 3:51 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-17 3:09 [syzbot] [x25?] possible deadlock in lapb_connect_request syzbot
2026-10-18 3:51 ` syzbot [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=6ad44244.7f4e89eb.3d59aa.00ac.GAE@google.com \
--to=syzbot+8328573e4d0514392471@syzkaller.appspotmail.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-x25@vger.kernel.org \
--cc=ms@dev.tdt.de \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=syzkaller-bugs@googlegroups.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox