[v5.15] WARNING: held lock freed in mptcp_worker (2)

0 views
Skip to first unread message

syzbot

unread,
Dec 4, 2025, 9:26:28 AM (yesterday) Dec 4
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: cc5ec8769306 Linux 5.15.196
git tree: linux-5.15.y
console output: https://syzkaller.appspot.com/x/log.txt?x=17afd192580000
kernel config: https://syzkaller.appspot.com/x/.config?x=e1bb6d24ef2164eb
dashboard link: https://syzkaller.appspot.com/bug?extid=32eebe50bbce95f227ea
compiler: Debian clang version 20.1.8 (++20250708063551+0c9f909b7976-1~exp1~20250708183702.136), Debian LLD 20.1.8

Unfortunately, I don't have any reproducer for this issue yet.

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/c71c660545b2/disk-cc5ec876.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/4f011826cca6/vmlinux-cc5ec876.xz
kernel image: https://storage.googleapis.com/syzbot-assets/8ccd1a2c3f8c/bzImage-cc5ec876.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+32eebe...@syzkaller.appspotmail.com

=========================
WARNING: held lock freed!
syzkaller #0 Not tainted
-------------------------
kworker/0:5/4244 is freeing memory ffff88807c408c40-ffff88807c4097c7, with a lock still held there!
ffff88807c408d60 (sk_lock-AF_INET6){+.+.}-{0:0}, at: lock_sock include/net/sock.h:1731 [inline]
ffff88807c408d60 (sk_lock-AF_INET6){+.+.}-{0:0}, at: mptcp_worker+0x31/0xc70 net/mptcp/protocol.c:2527
3 locks held by kworker/0:5/4244:
#0: ffff888016870938 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0x760/0x1000 kernel/workqueue.c:-1
#1: ffffc9000326fd00 ((work_completion)(&msk->work)){+.+.}-{0:0}, at: process_one_work+0x7a3/0x1000 kernel/workqueue.c:2285
#2: ffff88807c408d60 (sk_lock-AF_INET6){+.+.}-{0:0}, at: lock_sock include/net/sock.h:1731 [inline]
#2: ffff88807c408d60 (sk_lock-AF_INET6){+.+.}-{0:0}, at: mptcp_worker+0x31/0xc70 net/mptcp/protocol.c:2527

stack backtrace:
CPU: 0 PID: 4244 Comm: kworker/0:5 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
Workqueue: events mptcp_worker
Call Trace:
<TASK>
dump_stack_lvl+0x168/0x230 lib/dump_stack.c:106
print_freed_lock_bug kernel/locking/lockdep.c:6401 [inline]
debug_check_no_locks_freed+0x2f2/0x3c0 kernel/locking/lockdep.c:6434
slab_free_hook mm/slub.c:1682 [inline]
slab_free_freelist_hook+0x76/0x170 mm/slub.c:1736
slab_free mm/slub.c:3504 [inline]
kmem_cache_free+0x8f/0x210 mm/slub.c:3520
sk_prot_free net/core/sock.c:1903 [inline]
__sk_destruct+0x569/0x840 net/core/sock.c:1991
sock_put include/net/sock.h:1976 [inline]
__mptcp_destroy_sock+0x5c1/0x720 net/mptcp/protocol.c:2795
mptcp_worker+0x878/0xc70 net/mptcp/protocol.c:2553
process_one_work+0x863/0x1000 kernel/workqueue.c:2310
worker_thread+0xaa8/0x12a0 kernel/workqueue.c:2457
kthread+0x436/0x520 kernel/kthread.c:334
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
</TASK>
------------[ cut here ]------------
refcount_t: underflow; use-after-free.
WARNING: CPU: 0 PID: 4244 at lib/refcount.c:28 refcount_warn_saturate+0x11b/0x1a0 lib/refcount.c:28
Modules linked in:
CPU: 0 PID: 4244 Comm: kworker/0:5 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
Workqueue: events mptcp_worker
RIP: 0010:refcount_warn_saturate+0x11b/0x1a0 lib/refcount.c:28
Code: 09 01 48 c7 c7 c0 a8 59 8a e8 31 c1 c3 05 0f 0b eb c4 e8 48 e5 9c fd c6 05 9e 11 7b 09 01 48 c7 c7 20 a9 59 8a e8 15 c1 c3 05 <0f> 0b eb a8 e8 2c e5 9c fd c6 05 7f 11 7b 09 01 48 c7 c7 60 a8 59
RSP: 0018:ffffc9000326fc28 EFLAGS: 00010246
RAX: 9c144039d6085a00 RBX: 0000000000000003 RCX: ffff88801ff00000
RDX: 0000000000000000 RSI: 0000000080000000 RDI: 0000000000000000
RBP: ffffc9000326fdb8 R08: dffffc0000000000 R09: ffffed10172067b0
R10: ffffed10172067b0 R11: 1ffff110172067af R12: dffffc0000000000
R13: ffff8880224ebb18 R14: 0000000000000003 R15: ffff8880b903f008
FS: 0000000000000000(0000) GS:ffff8880b9000000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f8e0f52a568 CR3: 000000005a636000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<TASK>
process_one_work+0x863/0x1000 kernel/workqueue.c:2310
worker_thread+0xaa8/0x12a0 kernel/workqueue.c:2457
kthread+0x436/0x520 kernel/kthread.c:334
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
</TASK>


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
Reply all
Reply to author
Forward
0 new messages