Kernel bug: general protection fault in bq_flush_to_queue (2)
Subsystem: net, bpf
Status: open

Crash report:
Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN PTI
KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
CPU: 0 UID: 0 PID: 6085 Comm: syz.0.18 Not tainted syzkaller #0 PREEMPT_{RT,(full)} 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
RIP: 0010:__list_del include/linux/list.h:204 [inline]
RIP: 0010:__list_del_clearprev include/linux/list.h:217 [inline]
RIP: 0010:bq_flush_to_queue+0x46f/0x580 kernel/bpf/cpumap.c:740
Code: 35 00 4d 8b 26 4d 8d 74 24 08 4c 89 f0 48 c1 e8 03 42 80 3c 38 00 74 08 4c 89 f7 e8 0b f2 35 00 49 89 1e 48 89 d8 48 c1 e8 03 <42> 80 3c 38 00 74 08 48 89 df e8 f2 f1 35 00 4c 89 23 48 8b 04 24
RSP: 0018:ffffc90004207650 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000001 RSI: 0000000000000004 RDI: 00000000ffffffff
RBP: ffff888030b0c400 R08: ffff888024b2802b R09: 1ffff11004965005
R10: dffffc0000000000 R11: ffffed1004965006 R12: ffffc90003ad79e0
R13: 0000000000000008 R14: ffffc90003ad79e8 R15: dffffc0000000000
FS:  00007f6b36bed6c0(0000) GS:ffff888126d5e000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f6b36becf98 CR3: 000000003f6c6000 CR4: 00000000003526f0
Call Trace:
 <TASK>
 __cpu_map_flush+0x5d/0xd0 kernel/bpf/cpumap.c:808
 xdp_do_flush+0x13c/0x1d0 net/core/filter.c:4348
 xdp_test_run_batch net/bpf/test_run.c:348 [inline]
 bpf_test_run_xdp_live+0x154f/0x1b20 net/bpf/test_run.c:379
 bpf_prog_test_run_xdp+0x7c0/0x10e0 net/bpf/test_run.c:1388
 bpf_prog_test_run+0x2cd/0x340 kernel/bpf/syscall.c:4703
 __sys_bpf+0x562/0x860 kernel/bpf/syscall.c:6182
 __do_sys_bpf kernel/bpf/syscall.c:6274 [inline]
 __se_sys_bpf kernel/bpf/syscall.c:6272 [inline]
 __x64_sys_bpf+0x7c/0x90 kernel/bpf/syscall.c:6272
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xfa/0xf80 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f6b3759f749
Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f6b36bed038 EFLAGS: 00000246 ORIG_RAX: 0000000000000141
RAX: ffffffffffffffda RBX: 00007f6b377f6090 RCX: 00007f6b3759f749
RDX: 0000000000000050 RSI: 0000200000000000 RDI: 000000000000000a
RBP: 00007f6b37623f91 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f6b377f6128 R14: 00007f6b377f6090 R15: 00007ffda92d99b8
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:__list_del include/linux/list.h:204 [inline]
RIP: 0010:__list_del_clearprev include/linux/list.h:217 [inline]
RIP: 0010:bq_flush_to_queue+0x46f/0x580 kernel/bpf/cpumap.c:740
Code: 35 00 4d 8b 26 4d 8d 74 24 08 4c 89 f0 48 c1 e8 03 42 80 3c 38 00 74 08 4c 89 f7 e8 0b f2 35 00 49 89 1e 48 89 d8 48 c1 e8 03 <42> 80 3c 38 00 74 08 48 89 df e8 f2 f1 35 00 4c 89 23 48 8b 04 24
RSP: 0018:ffffc90004207650 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000001 RSI: 0000000000000004 RDI: 00000000ffffffff
RBP: ffff888030b0c400 R08: ffff888024b2802b R09: 1ffff11004965005
R10: dffffc0000000000 R11: ffffed1004965006 R12: ffffc90003ad79e0
R13: 0000000000000008 R14: ffffc90003ad79e8 R15: dffffc0000000000
FS:  00007f6b36bed6c0(0000) GS:ffff888126d5e000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f6b36becf98 CR3: 000000003f6c6000 CR4: 00000000003526f0
----------------
Code disassembly (best guess):
   0:	35 00 4d 8b 26       	xor    $0x268b4d00,%eax
   5:	4d 8d 74 24 08       	lea    0x8(%r12),%r14
   a:	4c 89 f0             	mov    %r14,%rax
   d:	48 c1 e8 03          	shr    $0x3,%rax
  11:	42 80 3c 38 00       	cmpb   $0x0,(%rax,%r15,1)
  16:	74 08                	je     0x20
  18:	4c 89 f7             	mov    %r14,%rdi
  1b:	e8 0b f2 35 00       	call   0x35f22b
  20:	49 89 1e             	mov    %rbx,(%r14)
  23:	48 89 d8             	mov    %rbx,%rax
  26:	48 c1 e8 03          	shr    $0x3,%rax
* 2a:	42 80 3c 38 00       	cmpb   $0x0,(%rax,%r15,1) <-- trapping instruction
  2f:	74 08                	je     0x39
  31:	48 89 df             	mov    %rbx,%rdi
  34:	e8 f2 f1 35 00       	call   0x35f22b
  39:	4c 89 23             	mov    %r12,(%rbx)
  3c:	48 8b 04 24          	mov    (%rsp),%rax