syzbot


KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow (4)

Status: upstream: reported on 2026/05/18 12:55
Subsystems: kernel
Labels: race:harmful prio:high
[Documentation on labels]
Reported-by: syzbot+72789cd1697965e714ca@syzkaller.appspotmail.com
First crash: 26d, last: 14d
✨ AI Jobs (2)
ID Workflow Result Correct Bug Created Started Finished Revision Error
7ad0cab3-ac3a-43ca-ba5d-f27a03108284 assessment-security DenialOfService: ❌ Exploitable: ❌ FilesystemTrigger: ✅ NetworkTrigger: ✅ PeripheralTrigger: ✅ RemoteTrigger: ✅ Unprivileged: ✅ UserNamespace: ✅ VMGuestTrigger: ✅ VMHostTrigger: ✅ KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow (4) 2026/06/01 21:00 2026/06/01 21:00 2026/06/01 21:02 386cc6dacdf7e3ebce9507beed6755d7e999554d
7af8d9b4-b6f3-433e-b0e6-f5734a9b6ef3 assessment-kcsan Benign: ❌ KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow (4) 2026/05/18 12:23 2026/05/18 12:23 2026/05/18 12:54 55156e845761fb36809c4b3701a920dddce23332
Discussions (2)
Title Replies (including bot) Last reply
[PATCH] timekeeping: Use data_race() and READ_ONCE() in ktime_get_real_seconds() 2 (2) 2026/06/02 09:46
[syzbot] [kernel?] KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow (4) 0 (1) 2026/05/18 12:55
Similar bugs (3)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow (2) kernel 6 2 324d 342d 0/29 auto-obsoleted due to no activity on 2025/09/18 01:57
upstream KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow (3) kernel 6 2 173d 220d 0/29 auto-obsoleted due to no activity on 2026/02/16 08:50
upstream KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow kernel 6 1 407d 407d 0/29 auto-obsoleted due to no activity on 2025/06/27 01:56

Sample crash report:
==================================================================
BUG: KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow

write to 0xffffffff893ae488 of 304 bytes by interrupt on cpu 1:
 timekeeping_update_from_shadow+0x40d/0x440 kernel/time/timekeeping.c:829
 __timekeeping_advance+0xa5d/0xc10 kernel/time/timekeeping.c:2532
 timekeeping_advance kernel/time/timekeeping.c:2540 [inline]
 update_wall_time+0x21/0x50 kernel/time/timekeeping.c:2550
 tick_do_update_jiffies64+0x169/0x1c0 kernel/time/tick-sched.c:149
 tick_limited_update_jiffies64 kernel/time/tick-sched.c:220 [inline]
 tick_sched_do_timer kernel/time/tick-sched.c:264 [inline]
 tick_nohz_handler+0x376/0x3d0 kernel/time/tick-sched.c:312
 __run_hrtimer kernel/time/hrtimer.c:1930 [inline]
 __hrtimer_run_queues+0x276/0x4f0 kernel/time/hrtimer.c:1994
 hrtimer_interrupt+0x261/0x850 kernel/time/hrtimer.c:2113
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline]
 __sysvec_apic_timer_interrupt+0x5f/0x1c0 arch/x86/kernel/apic/apic.c:1067
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1061 [inline]
 sysvec_apic_timer_interrupt+0x6f/0x80 arch/x86/kernel/apic/apic.c:1061
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:697
 kcsan_setup_watchpoint+0x404/0x410 kernel/kcsan/core.c:705
 unix_dgram_recvmsg+0x27/0x90 net/unix/af_unix.c:2678
 sock_recvmsg_nosec+0xc2/0xf0 net/socket.c:1137
 ____sys_recvmsg+0x26f/0x280 net/socket.c:2916
 ___sys_recvmsg+0x11f/0x3b0 net/socket.c:2960
 do_recvmmsg+0x1ef/0x560 net/socket.c:3055
 __sys_recvmmsg net/socket.c:3129 [inline]
 __do_sys_recvmmsg net/socket.c:3152 [inline]
 __se_sys_recvmmsg net/socket.c:3145 [inline]
 __x64_sys_recvmmsg+0xe5/0x170 net/socket.c:3145
 x64_sys_call+0x80f/0x3020 arch/x86/include/generated/asm/syscalls_64.h:300
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0x12c/0x3b0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffffffff893ae4c0 of 8 bytes by task 11983 on cpu 0:
 ktime_get_real_seconds+0x15/0x30 kernel/time/timekeeping.c:1156
 xfrm_lookup_with_ifid+0x1327/0x1590 net/xfrm/xfrm_policy.c:3282
 xfrm_lookup net/xfrm/xfrm_policy.c:3336 [inline]
 xfrm_lookup_route+0x3a/0x110 net/xfrm/xfrm_policy.c:3347
 ip_route_output_flow+0xdb/0x110 net/ipv4/route.c:2939
 udp_sendmsg+0x1308/0x1500 net/ipv4/udp.c:1409
 inet_sendmsg+0xac/0xd0 net/ipv4/af_inet.c:866
 sock_sendmsg_nosec net/socket.c:787 [inline]
 __sock_sendmsg net/socket.c:802 [inline]
 ____sys_sendmsg+0x519/0x5b0 net/socket.c:2698
 ___sys_sendmsg+0x195/0x1e0 net/socket.c:2752
 __sys_sendmmsg+0x185/0x320 net/socket.c:2841
 __do_sys_sendmmsg net/socket.c:2868 [inline]
 __se_sys_sendmmsg net/socket.c:2865 [inline]
 __x64_sys_sendmmsg+0x57/0x70 net/socket.c:2865
 x64_sys_call+0x27aa/0x3020 arch/x86/include/generated/asm/syscalls_64.h:308
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0x12c/0x3b0 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x000000006a19f38f -> 0x000000006a19f390

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 11983 Comm: syz.6.2483 Tainted: G        W           syzkaller #0 PREEMPT(lazy) 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/09/2026
==================================================================

Crashes (3):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/05/29 20:14 upstream 8fde5d1d47f6 6b4a8443 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow
2026/05/22 13:26 upstream 6779b50faa56 5f091fcc .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow
2026/05/18 12:20 upstream 5200f5f493f7 55156e84 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_real_seconds / timekeeping_update_from_shadow
* Struck through repros no longer work on HEAD.