syzbot


KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock

Status: upstream: reported syz repro on 2025/03/31 20:23
Subsystems: smc
[Documentation on labels]
Reported-by: syzbot+827ae2bfb3a3529333e9@syzkaller.appspotmail.com
First crash: 349d, last: 12d
Cause bisection: failed (error log, bisect log)
  
Fix bisection: the issue occurs on the latest tested release (bisect log)
  
Discussions (3)
Title Replies (including bot) Last reply
[syzbot] Monthly smc report (Aug 2025) 0 (1) 2025/08/18 13:25
[syzbot] [rdma?] [s390?] [net?] KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock 5 (11) 2025/06/30 06:51
[syzbot] Monthly rdma report (Apr 2025) 0 (1) 2025/04/03 07:06
Last patch testing requests (11)
Created Duration User Patch Repo Result
2025/07/20 15:20 26m retest repro upstream OK log
2025/06/30 00:27 23m hdanton@sina.com patch upstream OK log
2025/06/29 15:10 48m contact@arnaud-lcm.com patch upstream report log
2025/06/29 14:47 18m contact@arnaud-lcm.com patch upstream report log
2025/06/29 13:29 17m contact@arnaud-lcm.com patch upstream report log
2025/04/13 07:27 18m retest repro upstream report log
2025/04/05 10:08 43m richard120310@gmail.com patch git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 850925a8133c report log
2025/01/22 18:40 26m edumazet@google.com upstream OK log
2024/12/17 17:57 25m edumazet@google.com upstream report log
2024/11/18 12:17 26m retest repro upstream report log
2024/11/18 12:17 41m retest repro upstream report log
Cause bisection attempts (2)
Created Duration User Patch Repo Result
2024/11/23 03:09 12h03m bisect upstream error job log
2024/10/30 07:33 13h41m bisect upstream error job log
marked invalid by edumazet@google.com

Sample crash report:
==================================================================
BUG: KASAN: null-ptr-deref in instrument_atomic_read include/linux/instrumented.h:68 [inline]
BUG: KASAN: null-ptr-deref in atomic_read include/linux/atomic/atomic-instrumented.h:32 [inline]
BUG: KASAN: null-ptr-deref in smc_tcp_syn_recv_sock+0xa7/0x4b0 net/smc/af_smc.c:135
Read of size 4 at addr 0000000000000abc by task syz.8.1128/11518

CPU: 1 UID: 0 PID: 11518 Comm: syz.8.1128 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/18/2025
Call Trace:
 <IRQ>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120
 kasan_report+0xe0/0x110 mm/kasan/report.c:595
 check_region_inline mm/kasan/generic.c:183 [inline]
 kasan_check_range+0x100/0x1b0 mm/kasan/generic.c:189
 instrument_atomic_read include/linux/instrumented.h:68 [inline]
 atomic_read include/linux/atomic/atomic-instrumented.h:32 [inline]
 smc_tcp_syn_recv_sock+0xa7/0x4b0 net/smc/af_smc.c:135
 tcp_check_req+0x69d/0x1f80 net/ipv4/tcp_minisocks.c:874
 tcp_v4_rcv+0x19ab/0x4640 net/ipv4/tcp_ipv4.c:2291
 ip_protocol_deliver_rcu+0xba/0x4c0 net/ipv4/ip_input.c:205
 ip_local_deliver_finish+0x3f2/0x720 net/ipv4/ip_input.c:239
 NF_HOOK include/linux/netfilter.h:318 [inline]
 NF_HOOK include/linux/netfilter.h:312 [inline]
 ip_local_deliver+0x18e/0x1f0 net/ipv4/ip_input.c:260
 dst_input include/net/dst.h:471 [inline]
 ip_rcv_finish net/ipv4/ip_input.c:454 [inline]
 NF_HOOK include/linux/netfilter.h:318 [inline]
 NF_HOOK include/linux/netfilter.h:312 [inline]
 ip_rcv+0x2e0/0x600 net/ipv4/ip_input.c:574
 __netif_receive_skb_one_core+0x197/0x1e0 net/core/dev.c:5991
 __netif_receive_skb+0x1d/0x160 net/core/dev.c:6104
 process_backlog+0x442/0x15e0 net/core/dev.c:6456
 __napi_poll.constprop.0+0xba/0x550 net/core/dev.c:7506
 napi_poll net/core/dev.c:7569 [inline]
 net_rx_action+0xa9f/0xfe0 net/core/dev.c:7696
 handle_softirqs+0x219/0x8e0 kernel/softirq.c:579
 __do_softirq kernel/softirq.c:613 [inline]
 invoke_softirq kernel/softirq.c:453 [inline]
 __irq_exit_rcu+0x109/0x170 kernel/softirq.c:680
 irq_exit_rcu+0x9/0x30 kernel/softirq.c:696
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline]
 sysvec_apic_timer_interrupt+0xa4/0xc0 arch/x86/kernel/apic/apic.c:1050
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
RIP: 0010:finish_task_switch.isra.0+0x22a/0xc10 kernel/sched/core.c:5225
Code: fb 09 00 00 44 8b 05 59 c4 22 0f 45 85 c0 0f 85 be 01 00 00 4c 89 e7 e8 a4 f6 ff ff e8 9f 64 3a 00 fb 65 48 8b 1d 1e b4 4d 12 <48> 8d bb 18 16 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1
RSP: 0018:ffffc9000454f4b8 EFLAGS: 00000206
RAX: 00000000000153db RBX: ffff888026a0bc00 RCX: ffffffff81c37f8f
RDX: 0000000000000000 RSI: ffffffff8de5176d RDI: ffffffff8c163a00
RBP: ffffc9000454f500 R08: 0000000000000001 R09: 0000000000000001
R10: ffffffff90abae97 R11: 0000000000000000 R12: ffff8880b853a440
R13: ffff88801e685a00 R14: ffff8880b843a440 R15: ffff8880b853b270
 context_switch kernel/sched/core.c:5360 [inline]
 __schedule+0x1198/0x5de0 kernel/sched/core.c:6961
 __schedule_loop kernel/sched/core.c:7043 [inline]
 schedule+0xe7/0x3a0 kernel/sched/core.c:7058
 schedule_timeout+0x257/0x290 kernel/time/sleep_timeout.c:75
 unix_wait_for_peer+0x245/0x280 net/unix/af_unix.c:1639
 unix_dgram_sendmsg+0x1410/0x17f0 net/unix/af_unix.c:2273
 sock_sendmsg_nosec net/socket.c:714 [inline]
 __sock_sendmsg net/socket.c:729 [inline]
 ____sys_sendmsg+0xa98/0xc70 net/socket.c:2614
 ___sys_sendmsg+0x134/0x1d0 net/socket.c:2668
 __sys_sendmmsg+0x200/0x420 net/socket.c:2757
 __do_sys_sendmmsg net/socket.c:2784 [inline]
 __se_sys_sendmmsg net/socket.c:2781 [inline]
 __x64_sys_sendmmsg+0x9c/0x100 net/socket.c:2781
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xcd/0x4e0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f9aa1b8eec9
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:00007f9aa2b10038 EFLAGS: 00000246 ORIG_RAX: 0000000000000133
RAX: ffffffffffffffda RBX: 00007f9aa1de5fa0 RCX: 00007f9aa1b8eec9
RDX: 0000000000000651 RSI: 0000200000000000 RDI: 0000000000000004
RBP: 00007f9aa1c11f91 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f9aa1de6038 R14: 00007f9aa1de5fa0 R15: 00007ffcf3ed8438
 </TASK>
==================================================================
Oops: general protection fault, probably for non-canonical address 0xdffffc0000000157: 0000 [#1] SMP KASAN NOPTI
KASAN: null-ptr-deref in range [0x0000000000000ab8-0x0000000000000abf]
CPU: 1 UID: 0 PID: 11518 Comm: syz.8.1128 Tainted: G    B               syzkaller #0 PREEMPT(full) 
Tainted: [B]=BAD_PAGE
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/18/2025
RIP: 0010:arch_atomic_read arch/x86/include/asm/atomic.h:23 [inline]
RIP: 0010:raw_atomic_read include/linux/atomic/atomic-arch-fallback.h:457 [inline]
RIP: 0010:atomic_read include/linux/atomic/atomic-instrumented.h:33 [inline]
RIP: 0010:smc_tcp_syn_recv_sock+0xb8/0x4b0 net/smc/af_smc.c:135
Code: ad bc 0a 00 00 be 04 00 00 00 44 8b bb 1c 04 00 00 4c 89 ef e8 59 5f e7 f6 4c 89 ea 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 <0f> b6 14 02 4c 89 e8 83 e0 07 83 c0 03 38 d0 7c 08 84 d2 0f 85 34
RSP: 0018:ffffc90000a08768 EFLAGS: 00010213
RAX: dffffc0000000000 RBX: ffff888078635e80 RCX: ffffffff817a563f
RDX: 0000000000000157 RSI: ffffffff8220e447 RDI: 0000000000000007
RBP: 0000000000000000 R08: 0000000000000007 R09: 0000000000000000
R10: 0000000000000000 R11: 6e696c6261736944 R12: 0000000000000000
R13: 0000000000000abc R14: ffffc90000a08838 R15: 0000000000000000
FS:  00007f9aa2b106c0(0000) GS:ffff8881247b3000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00005651d9b565b8 CR3: 00000000564f8000 CR4: 0000000000350ef0
Call Trace:
 <IRQ>
 tcp_check_req+0x69d/0x1f80 net/ipv4/tcp_minisocks.c:874
 tcp_v4_rcv+0x19ab/0x4640 net/ipv4/tcp_ipv4.c:2291
 ip_protocol_deliver_rcu+0xba/0x4c0 net/ipv4/ip_input.c:205
 ip_local_deliver_finish+0x3f2/0x720 net/ipv4/ip_input.c:239
 NF_HOOK include/linux/netfilter.h:318 [inline]
 NF_HOOK include/linux/netfilter.h:312 [inline]
 ip_local_deliver+0x18e/0x1f0 net/ipv4/ip_input.c:260
 dst_input include/net/dst.h:471 [inline]
 ip_rcv_finish net/ipv4/ip_input.c:454 [inline]
 NF_HOOK include/linux/netfilter.h:318 [inline]
 NF_HOOK include/linux/netfilter.h:312 [inline]
 ip_rcv+0x2e0/0x600 net/ipv4/ip_input.c:574
 __netif_receive_skb_one_core+0x197/0x1e0 net/core/dev.c:5991
 __netif_receive_skb+0x1d/0x160 net/core/dev.c:6104
 process_backlog+0x442/0x15e0 net/core/dev.c:6456
 __napi_poll.constprop.0+0xba/0x550 net/core/dev.c:7506
 napi_poll net/core/dev.c:7569 [inline]
 net_rx_action+0xa9f/0xfe0 net/core/dev.c:7696
 handle_softirqs+0x219/0x8e0 kernel/softirq.c:579
 __do_softirq kernel/softirq.c:613 [inline]
 invoke_softirq kernel/softirq.c:453 [inline]
 __irq_exit_rcu+0x109/0x170 kernel/softirq.c:680
 irq_exit_rcu+0x9/0x30 kernel/softirq.c:696
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline]
 sysvec_apic_timer_interrupt+0xa4/0xc0 arch/x86/kernel/apic/apic.c:1050
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
RIP: 0010:finish_task_switch.isra.0+0x22a/0xc10 kernel/sched/core.c:5225
Code: fb 09 00 00 44 8b 05 59 c4 22 0f 45 85 c0 0f 85 be 01 00 00 4c 89 e7 e8 a4 f6 ff ff e8 9f 64 3a 00 fb 65 48 8b 1d 1e b4 4d 12 <48> 8d bb 18 16 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1
RSP: 0018:ffffc9000454f4b8 EFLAGS: 00000206
RAX: 00000000000153db RBX: ffff888026a0bc00 RCX: ffffffff81c37f8f
RDX: 0000000000000000 RSI: ffffffff8de5176d RDI: ffffffff8c163a00
RBP: ffffc9000454f500 R08: 0000000000000001 R09: 0000000000000001
R10: ffffffff90abae97 R11: 0000000000000000 R12: ffff8880b853a440
R13: ffff88801e685a00 R14: ffff8880b843a440 R15: ffff8880b853b270
 context_switch kernel/sched/core.c:5360 [inline]
 __schedule+0x1198/0x5de0 kernel/sched/core.c:6961
 __schedule_loop kernel/sched/core.c:7043 [inline]
 schedule+0xe7/0x3a0 kernel/sched/core.c:7058
 schedule_timeout+0x257/0x290 kernel/time/sleep_timeout.c:75
 unix_wait_for_peer+0x245/0x280 net/unix/af_unix.c:1639
 unix_dgram_sendmsg+0x1410/0x17f0 net/unix/af_unix.c:2273
 sock_sendmsg_nosec net/socket.c:714 [inline]
 __sock_sendmsg net/socket.c:729 [inline]
 ____sys_sendmsg+0xa98/0xc70 net/socket.c:2614
 ___sys_sendmsg+0x134/0x1d0 net/socket.c:2668
 __sys_sendmmsg+0x200/0x420 net/socket.c:2757
 __do_sys_sendmmsg net/socket.c:2784 [inline]
 __se_sys_sendmmsg net/socket.c:2781 [inline]
 __x64_sys_sendmmsg+0x9c/0x100 net/socket.c:2781
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xcd/0x4e0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f9aa1b8eec9
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:00007f9aa2b10038 EFLAGS: 00000246 ORIG_RAX: 0000000000000133
RAX: ffffffffffffffda RBX: 00007f9aa1de5fa0 RCX: 00007f9aa1b8eec9
RDX: 0000000000000651 RSI: 0000200000000000 RDI: 0000000000000004
RBP: 00007f9aa1c11f91 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f9aa1de6038 R14: 00007f9aa1de5fa0 R15: 00007ffcf3ed8438
 </TASK>
Modules linked in:
---[ end trace 0000000000000000 ]---
RIP: 0010:arch_atomic_read arch/x86/include/asm/atomic.h:23 [inline]
RIP: 0010:raw_atomic_read include/linux/atomic/atomic-arch-fallback.h:457 [inline]
RIP: 0010:atomic_read include/linux/atomic/atomic-instrumented.h:33 [inline]
RIP: 0010:smc_tcp_syn_recv_sock+0xb8/0x4b0 net/smc/af_smc.c:135
Code: ad bc 0a 00 00 be 04 00 00 00 44 8b bb 1c 04 00 00 4c 89 ef e8 59 5f e7 f6 4c 89 ea 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 <0f> b6 14 02 4c 89 e8 83 e0 07 83 c0 03 38 d0 7c 08 84 d2 0f 85 34
RSP: 0018:ffffc90000a08768 EFLAGS: 00010213
RAX: dffffc0000000000 RBX: ffff888078635e80 RCX: ffffffff817a563f
RDX: 0000000000000157 RSI: ffffffff8220e447 RDI: 0000000000000007
RBP: 0000000000000000 R08: 0000000000000007 R09: 0000000000000000
R10: 0000000000000000 R11: 6e696c6261736944 R12: 0000000000000000
R13: 0000000000000abc R14: ffffc90000a08838 R15: 0000000000000000
FS:  00007f9aa2b106c0(0000) GS:ffff8881247b3000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00005651d9b565b8 CR3: 00000000564f8000 CR4: 0000000000350ef0
----------------
Code disassembly (best guess), 2 bytes skipped:
   0:	00 00                	add    %al,(%rax)
   2:	44 8b 05 59 c4 22 0f 	mov    0xf22c459(%rip),%r8d        # 0xf22c462
   9:	45 85 c0             	test   %r8d,%r8d
   c:	0f 85 be 01 00 00    	jne    0x1d0
  12:	4c 89 e7             	mov    %r12,%rdi
  15:	e8 a4 f6 ff ff       	call   0xfffff6be
  1a:	e8 9f 64 3a 00       	call   0x3a64be
  1f:	fb                   	sti
  20:	65 48 8b 1d 1e b4 4d 	mov    %gs:0x124db41e(%rip),%rbx        # 0x124db446
  27:	12
* 28:	48 8d bb 18 16 00 00 	lea    0x1618(%rbx),%rdi <-- trapping instruction
  2f:	48 b8 00 00 00 00 00 	movabs $0xdffffc0000000000,%rax
  36:	fc ff df
  39:	48 89 fa             	mov    %rdi,%rdx
  3c:	48                   	rex.W
  3d:	c1                   	.byte 0xc1

Crashes (18):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/09/27 00:45 upstream 083fc6d7fa0d 001c9061 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-badwrites-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/09/18 23:23 upstream cbf658dd0941 e2beed91 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/05/20 11:50 upstream a5806cd506af 8f9cf946 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/03/07 07:09 upstream 0f52fd4f67c6 831e3629 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/02/24 10:07 upstream d082ecbc71e9 d34966d1 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/02/23 03:10 upstream 5cf80612d3f7 d34966d1 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-smack-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/02/09 13:49 upstream 9946eaf552b1 ef44b750 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-badwrites-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2024/11/04 09:13 upstream b9021de3ec2f f00eed24 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci-upstream-kasan-badwrites-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2024/11/03 22:51 upstream b9021de3ec2f f00eed24 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-badwrites-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2024/10/27 00:57 upstream 850925a8133c 65e8686b .config console log report syz / log [disk image] [vmlinux] [kernel image] ci-upstream-kasan-badwrites-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2024/10/25 10:01 upstream ae90f6a6170d c79b8ca5 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-badwrites-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/05/31 10:45 upstream 0f70f5b08a47 3d2f584d .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-386 KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/01/26 08:43 upstream aa22f4da2a46 9fbd772e .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/01/11 12:23 upstream 77a903cd8e5a 6dbc6a9b .config console log report [disk image (non-bootable)] [vmlinux] [kernel image] ci-snapshot-upstream-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/03/30 02:07 upstream 7d06015d936c d3999433 .config console log report info [disk image (non-bootable)] [vmlinux] [kernel image] ci-qemu-upstream-386 KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/08/18 08:20 linux-next 3ac864c2d9bb 1804e95e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2024/11/22 09:50 linux-next cfba9f07a1d6 4b25d554 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
2025/03/16 05:12 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci a5618886fdab e2826670 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 KASAN: null-ptr-deref Read in smc_tcp_syn_recv_sock
* Struck through repros no longer work on HEAD.