syzbot


general protection fault in ipv6_get_saddr_eval

Status: upstream: reported syz repro on 2025/02/10 08:29
Subsystems: net bcachefs
[Documentation on labels]
Reported-by: syzbot+94c6d316eec8a68cc993@syzkaller.appspotmail.com
First crash: 18d, last: 18d
Cause bisection: introduced by (bisect log) :
commit 14152654805256d760315ec24e414363bfa19a06
Author: Kent Overstreet <kent.overstreet@linux.dev>
Date: Mon Nov 25 05:21:27 2024 +0000

  bcachefs: Bad btree roots are now autofix

Crash: general protection fault in __d_lookup (log)
Repro: syz .config
  
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [net?] [bcachefs?] general protection fault in ipv6_get_saddr_eval 0 (1) 2025/02/10 08:29
Last patch testing requests (1)
Created Duration User Patch Repo Result
2025/02/17 01:59 14m retest repro upstream report log

Sample crash report:
Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN PTI
KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007]
CPU: 0 UID: 0 PID: 12 Comm: kworker/u8:1 Not tainted 6.13.0-syzkaller-09793-g69b8923f5003 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
Workqueue: ipv6_addrconf addrconf_dad_work
RIP: 0010:ipv6_get_saddr_eval+0x511/0xf50 net/ipv6/addrconf.c:1666
Code: e8 03 42 80 3c 28 00 74 08 4c 89 f7 e8 98 a9 97 f7 48 89 6c 24 08 4d 8b 2e 4c 89 e8 48 c1 e8 03 48 b9 00 00 00 00 00 fc ff df <80> 3c 08 00 74 08 4c 89 ef e8 71 a9 97 f7 41 be e0 00 00 00 4d 03
RSP: 0018:ffffc900001168b8 EFLAGS: 00010246
RAX: 0000000000000000 RBX: ffff888024f99e40 RCX: dffffc0000000000
RDX: ffff88805fc0dc00 RSI: ffffffff8fdb28c0 RDI: ffffc900001169e8
RBP: 0000000000000006 R08: 0000000000000005 R09: ffffffff8a8bbc59
R10: 000000000000000b R11: ffff88801c285a00 R12: ffffc90000116a40
R13: 0000000000000000 R14: ffff88805fc0dd38 R15: 0000000000000006
FS:  0000000000000000(0000) GS:ffff8880b8600000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fa3ddba7bac CR3: 0000000024428000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <TASK>
 __ipv6_dev_get_saddr+0x1d3/0x4b0 net/ipv6/addrconf.c:1753
 ipv6_dev_get_saddr+0x555/0xc10 net/ipv6/addrconf.c:1889
 ip6_route_get_saddr include/net/ip6_route.h:147 [inline]
 ip6_dst_lookup_tail+0xf18/0x14f0 net/ipv6/ip6_output.c:1133
 ip6_dst_lookup_flow+0xb9/0x180 net/ipv6/ip6_output.c:1259
 udp_tunnel6_dst_lookup+0x2be/0x520 net/ipv6/ip6_udp_tunnel.c:165
 geneve6_xmit_skb drivers/net/geneve.c:950 [inline]
 geneve_xmit+0xcf2/0x2cf0 drivers/net/geneve.c:1036
 __netdev_start_xmit include/linux/netdevice.h:5144 [inline]
 netdev_start_xmit include/linux/netdevice.h:5153 [inline]
 xmit_one net/core/dev.c:3735 [inline]
 dev_hard_start_xmit+0x27a/0x7d0 net/core/dev.c:3751
 __dev_queue_xmit+0x1b73/0x3f50 net/core/dev.c:4584
 dev_queue_xmit include/linux/netdevice.h:3305 [inline]
 neigh_hh_output include/net/neighbour.h:523 [inline]
 neigh_output include/net/neighbour.h:537 [inline]
 ip6_finish_output2+0x1263/0x1780 net/ipv6/ip6_output.c:141
 ip6_finish_output+0x41e/0x840 net/ipv6/ip6_output.c:226
 NF_HOOK+0x9e/0x430 include/linux/netfilter.h:314
 mld_sendpack+0x843/0xdb0 net/ipv6/mcast.c:1862
 ipv6_mc_dad_complete+0x88/0x490 net/ipv6/mcast.c:2288
 addrconf_dad_completed+0x712/0xcd0 net/ipv6/addrconf.c:4336
 addrconf_dad_work+0xdbc/0x16a0
 process_one_work kernel/workqueue.c:3236 [inline]
 process_scheduled_works+0xa66/0x1840 kernel/workqueue.c:3317
 worker_thread+0x870/0xd30 kernel/workqueue.c:3398
 kthread+0x7a9/0x920 kernel/kthread.c:464
 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:148
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:ipv6_get_saddr_eval+0x511/0xf50 net/ipv6/addrconf.c:1666
Code: e8 03 42 80 3c 28 00 74 08 4c 89 f7 e8 98 a9 97 f7 48 89 6c 24 08 4d 8b 2e 4c 89 e8 48 c1 e8 03 48 b9 00 00 00 00 00 fc ff df <80> 3c 08 00 74 08 4c 89 ef e8 71 a9 97 f7 41 be e0 00 00 00 4d 03
RSP: 0018:ffffc900001168b8 EFLAGS: 00010246

RAX: 0000000000000000 RBX: ffff888024f99e40 RCX: dffffc0000000000
RDX: ffff88805fc0dc00 RSI: ffffffff8fdb28c0 RDI: ffffc900001169e8
RBP: 0000000000000006 R08: 0000000000000005 R09: ffffffff8a8bbc59
R10: 000000000000000b R11: ffff88801c285a00 R12: ffffc90000116a40
R13: 0000000000000000 R14: ffff88805fc0dd38 R15: 0000000000000006
FS:  0000000000000000(0000) GS:ffff8880b8600000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fa3ddba7bac CR3: 0000000024428000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
   0:	e8 03 42 80 3c       	call   0x3c804208
   5:	28 00                	sub    %al,(%rax)
   7:	74 08                	je     0x11
   9:	4c 89 f7             	mov    %r14,%rdi
   c:	e8 98 a9 97 f7       	call   0xf797a9a9
  11:	48 89 6c 24 08       	mov    %rbp,0x8(%rsp)
  16:	4d 8b 2e             	mov    (%r14),%r13
  19:	4c 89 e8             	mov    %r13,%rax
  1c:	48 c1 e8 03          	shr    $0x3,%rax
  20:	48 b9 00 00 00 00 00 	movabs $0xdffffc0000000000,%rcx
  27:	fc ff df
* 2a:	80 3c 08 00          	cmpb   $0x0,(%rax,%rcx,1) <-- trapping instruction
  2e:	74 08                	je     0x38
  30:	4c 89 ef             	mov    %r13,%rdi
  33:	e8 71 a9 97 f7       	call   0xf797a9a9
  38:	41 be e0 00 00 00    	mov    $0xe0,%r14d
  3e:	4d                   	rex.WRB
  3f:	03                   	.byte 0x3

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/02/03 00:44 upstream 69b8923f5003 568559e4 .config console log report syz / log [disk image] [vmlinux] [kernel image] [mounted in repro] ci2-upstream-fs general protection fault in ipv6_get_saddr_eval
* Struck through repros no longer work on HEAD.