process_one_work+0x765/0xd20 kernel/workqueue.c:2290
worker_thread+0xaef/0x1470 kernel/workqueue.c:2436
kthread+0x2da/0x360 kernel/kthread.c:288
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:354
---[ end trace 8cdb7c2b9069b53c ]---
kasan: CONFIG_KASAN_INLINE enabled
kasan: GPF could be caused by NULL-ptr deref or user memory access
general protection fault: 0000 [#1] PREEMPT SMP KASAN
CPU: 1 PID: 732 Comm: kworker/1:9 Tainted: G W 5.4.290-syzkaller-00002-g41adfeb3d639 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
Workqueue: events bpf_map_free_deferred
RIP: 0010:pcpu_get_page_chunk mm/percpu.c:253 [inline]
RIP: 0010:pcpu_chunk_addr_search mm/percpu.c:1568 [inline]
RIP: 0010:free_percpu+0x26d/0x910 mm/percpu.c:1972
Code: e8 03 42 80 3c 30 00 74 08 48 89 df e8 8c d5 0c 00 48 8b 3b 48 01 ef e8 61 63 07 00 48 89 c3 48 83 c3 20 48 89 d8 48 c1 e8 03 <42> 80 3c 30 00 74 08 48 89 df e8 64 d5 0c 00 4c 8b 23 4d 8d 7c 24
RSP: 0018:ffff8881dfd6fc78 EFLAGS: 00010002
RAX: 0000000000000004 RBX: 0000000000000020 RCX: ffff8881e4080fc0
RDX: 0000000000000000 RSI: 8000000000000180 RDI: 0000000000000000
RBP: ffff88817ad3eea0 R08: ffffffff818ec476 R09: 0000000000000003
R10: ffffffffffffffff R11: dffffc0000000001 R12: ffff88823fe9f5c0
R13: ffffffff83f3eea0 R14: dffffc0000000000 R15: ffff88817ad3eea0
FS: 0000000000000000(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000200000001000 CR3: 00000001e26dd000 CR4: 00000000003406a0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600
Call Trace:
dev_map_free+0x2db/0x630 kernel/bpf/devmap.c:241
bpf_map_free_deferred+0xa8/0x100 kernel/bpf/syscall.c:311
process_one_work+0x765/0xd20 kernel/workqueue.c:2290
worker_thread+0xaef/0x1470 kernel/workqueue.c:2436
kthread+0x2da/0x360 kernel/kthread.c:288
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:354
Modules linked in:
---[ end trace 8cdb7c2b9069b53d ]---
RIP: 0010:pcpu_get_page_chunk mm/percpu.c:253 [inline]
RIP: 0010:pcpu_chunk_addr_search mm/percpu.c:1568 [inline]
RIP: 0010:free_percpu+0x26d/0x910 mm/percpu.c:1972
Code: e8 03 42 80 3c 30 00 74 08 48 89 df e8 8c d5 0c 00 48 8b 3b 48 01 ef e8 61 63 07 00 48 89 c3 48 83 c3 20 48 89 d8 48 c1 e8 03 <42> 80 3c 30 00 74 08 48 89 df e8 64 d5 0c 00 4c 8b 23 4d 8d 7c 24
RSP: 0018:ffff8881dfd6fc78 EFLAGS: 00010002
RAX: 0000000000000004 RBX: 0000000000000020 RCX: ffff8881e4080fc0
RDX: 0000000000000000 RSI: 8000000000000180 RDI: 0000000000000000
RBP: ffff88817ad3eea0 R08: ffffffff818ec476 R09: 0000000000000003
R10: ffffffffffffffff R11: dffffc0000000001 R12: ffff88823fe9f5c0
R13: ffffffff83f3eea0 R14: dffffc0000000000 R15: ffff88817ad3eea0
FS: 0000000000000000(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000200000001000 CR3: 00000001e26dd000 CR4: 00000000003406a0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600
----------------
Code disassembly (best guess):
0: e8 03 42 80 3c call 0x3c804208
5: 30 00 xor %al,(%rax)
7: 74 08 je 0x11
9: 48 89 df mov %rbx,%rdi
c: e8 8c d5 0c 00 call 0xcd59d
11: 48 8b 3b mov (%rbx),%rdi
14: 48 01 ef add %rbp,%rdi
17: e8 61 63 07 00 call 0x7637d
1c: 48 89 c3 mov %rax,%rbx
1f: 48 83 c3 20 add $0x20,%rbx
23: 48 89 d8 mov %rbx,%rax
26: 48 c1 e8 03 shr $0x3,%rax
* 2a: 42 80 3c 30 00 cmpb $0x0,(%rax,%r14,1) <-- trapping instruction
2f: 74 08 je 0x39
31: 48 89 df mov %rbx,%rdi
34: e8 64 d5 0c 00 call 0xcd59d
39: 4c 8b 23 mov (%rbx),%r12
3c: 4d rex.WRB
3d: 8d .byte 0x8d
3e: 7c 24 jl 0x64