------------[ cut here ]------------
refcount_t: addition on 0; use-after-free.
WARNING: CPU: 0 PID: 2981 at lib/refcount.c:25 refcount_warn_saturate+0xf3/0x1b0 lib/refcount.c:25
Modules linked in:
CPU: 0 PID: 2981 Comm: kworker/u4:7 Not tainted 6.6.93-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
Workqueue: bat_events batadv_nc_worker
RIP: 0010:refcount_warn_saturate+0xf3/0x1b0 lib/refcount.c:25
Code: 15 0a 01 0f 85 98 00 00 00 e8 39 41 66 fd 5b 41 5e c3 e8 30 41 66 fd c6 05 e1 00 15 0a 01 48 c7 c7 40 0f fc 8a e8 0d a5 30 fd <0f> 0b eb e0 e8 14 41 66 fd c6 05 c6 00 15 0a 01 48 c7 c7 a0 0f fc
RSP: 0018:ffffc90000007848 EFLAGS: 00010246
RAX: 69936ecc7be94f00 RBX: 0000000000000002 RCX: ffff88802c353c00
RDX: 0000000000000100 RSI: 0000000000000000 RDI: 0000000000000002
RBP: ffffc900000079d0 R08: ffffc90000007447 R09: 1ffff92000000e88
R10: dffffc0000000000 R11: fffff52000000e89 R12: ffff88802ef70000
R13: dffffc0000000000 R14: ffff88802ef70154 R15: ffff88805ea8bc00
FS: 0000000000000000(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000200000102030 CR3: 000000007c773000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
__refcount_add include/linux/refcount.h:-1 [inline]
__refcount_inc include/linux/refcount.h:250 [inline]
refcount_inc include/linux/refcount.h:267 [inline]
get_net include/net/net_namespace.h:261 [inline]
tipc_aead_encrypt net/tipc/crypto.c:821 [inline]
tipc_crypto_xmit+0x17cf/0x2250 net/tipc/crypto.c:1761
tipc_bearer_xmit_skb+0x246/0x3f0 net/tipc/bearer.c:572
tipc_disc_timeout+0x581/0x6d0 net/tipc/discover.c:338
call_timer_fn+0x16e/0x530 kernel/time/timer.c:1700
expire_timers kernel/time/timer.c:1751 [inline]
__run_timers+0x52d/0x7d0 kernel/time/timer.c:2022
run_timer_softirq+0x67/0xf0 kernel/time/timer.c:2035
handle_softirqs+0x280/0x820 kernel/softirq.c:578
__do_softirq kernel/softirq.c:612 [inline]
invoke_softirq kernel/softirq.c:452 [inline]
__irq_exit_rcu+0xc7/0x190 kernel/softirq.c:661
irq_exit_rcu+0x9/0x20 kernel/softirq.c:673
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1088 [inline]
sysvec_apic_timer_interrupt+0xa4/0xc0 arch/x86/kernel/apic/apic.c:1088
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:687
RIP: 0010:__rcu_read_lock+0x31/0x60 kernel/rcu/tree_plugin.h:404
Code: 8b 1d 13 60 93 7e 48 81 c3 3c 04 00 00 48 89 d8 48 c1 e8 03 48 b9 00 00 00 00 00 fc ff df 0f b6 04 08 84 c0 75 11 ff 03 8b 03 <3d> 00 00 00 40 7d 02 5b c3 0f 0b eb fa 89 d9 80 e1 07 80 c1 03 38
RSP: 0018:ffffc9000bb17b50 EFLAGS: 00000202
RAX: 0000000000000001 RBX: ffff88802c35403c RCX: dffffc0000000000
RDX: 0000000000000000 RSI: ffffffff8aaac440 RDI: ffffffff8afc6780
RBP: ffff88803082d7d0 R08: ffffffff8e49a76f R09: 1ffffffff1c934ed
R10: dffffc0000000000 R11: fffffbfff1c934ee R12: dffffc0000000000
R13: ffff88801f3d7510 R14: ffff88803094cc80 R15: 00000000000002fa
rcu_read_lock include/linux/rcupdate.h:784 [inline]
batadv_nc_purge_orig_hash net/batman-adv/network-coding.c:408 [inline]
batadv_nc_worker+0xcb/0x610 net/batman-adv/network-coding.c:719
process_one_work kernel/workqueue.c:2634 [inline]
process_scheduled_works+0xa45/0x15b0 kernel/workqueue.c:2711
worker_thread+0xa55/0xfc0 kernel/workqueue.c:2792
kthread+0x2fa/0x390 kernel/kthread.c:388
ret_from_fork+0x48/0x80 arch/x86/kernel/process.c:152
ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:293
----------------
Code disassembly (best guess):
0: 8b 1d 13 60 93 7e mov 0x7e936013(%rip),%ebx # 0x7e936019
6: 48 81 c3 3c 04 00 00 add $0x43c,%rbx
d: 48 89 d8 mov %rbx,%rax
10: 48 c1 e8 03 shr $0x3,%rax
14: 48 b9 00 00 00 00 00 movabs $0xdffffc0000000000,%rcx
1b: fc ff df
1e: 0f b6 04 08 movzbl (%rax,%rcx,1),%eax
22: 84 c0 test %al,%al
24: 75 11 jne 0x37
26: ff 03 incl (%rbx)
28: 8b 03 mov (%rbx),%eax
* 2a: 3d 00 00 00 40 cmp $0x40000000,%eax <-- trapping instruction
2f: 7d 02 jge 0x33
31: 5b pop %rbx
32: c3 ret
33: 0f 0b ud2
35: eb fa jmp 0x31
37: 89 d9 mov %ebx,%ecx
39: 80 e1 07 and $0x7,%cl
3c: 80 c1 03 add $0x3,%cl
3f: 38 .byte 0x38