KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow

Status: moderation: reported on 2026/05/10 01:50
Subsystems: kernel
Labels: prio:low
[Documentation on labels]
Reported-by: syzbot+f7dcf4d975188a9ddca4@syzkaller.appspotmail.com
First crash: 157d, last: 11h29m
▶ ▼ ✨ AI Jobs (4)
ID Workflow Result Correct Bug Created Started Finished Revision
cdb43c88 repro-c 💥 KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow 2026/10/04 10:26 2026/10/04 10:26 2026/10/04 12:09 57bbd979
4de21149 repro-c 💥 KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow 2026/10/02 08:16 2026/10/02 08:16 2026/10/02 09:33 6d32eb1f
eba7887a assessment-security DenialOfService: ❌ Exploitable: ❌ FilesystemTrigger: ✅ NetworkTrigger: ✅ PeripheralTrigger: ✅ RemoteTrigger: ✅ Unprivileged: ✅ UserNamespace: ✅ VMGuestTrigger: ✅ VMHostTrigger: ✅ ❓ KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow 2026/05/15 19:26 2026/05/15 19:26 2026/05/15 19:28 efdaf0f9
9325fa29 assessment-kcsan Benign: ✅ ❓ KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow 2026/05/10 03:27 2026/05/10 03:27 2026/05/10 03:58 29233ece

Sample crash report:
ip6_tunnel: ip6gre2 xmit: Local address not yet configured!
ip6_tunnel: ip6gre2 xmit: Local address not yet configured!
==================================================================
BUG: KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow

write to 0xffffffff895fa508 of 320 bytes by interrupt on cpu 1:
 timekeeping_update_from_shadow+0x448/0x480 kernel/time/timekeeping.c:866
 __timekeeping_advance+0xb36/0xcf0 kernel/time/timekeeping.c:2663
 timekeeping_advance kernel/time/timekeeping.c:2671 [inline]
 update_wall_time+0x21/0x50 kernel/time/timekeeping.c:2681
 tick_do_update_jiffies64+0x169/0x1c0 kernel/time/tick-sched.c:149
 tick_sched_do_timer kernel/time/tick-sched.c:253 [inline]
 tick_nohz_handler+0x88/0x380 kernel/time/tick-sched.c:310
 __run_hrtimer kernel/time/hrtimer.c:2074 [inline]
 __hrtimer_run_queues+0x1f8/0x510 kernel/time/hrtimer.c:2131
 hrtimer_interrupt+0x27b/0x860 kernel/time/hrtimer.c:2250
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1051 [inline]
 __sysvec_apic_timer_interrupt+0x5f/0x1c0 arch/x86/kernel/apic/apic.c:1068
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline]
 sysvec_apic_timer_interrupt+0x6f/0x80 arch/x86/kernel/apic/apic.c:1062
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674
 __preempt_count_dec_and_test arch/x86/include/asm/preempt.h:123 [inline]
 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:211 [inline]
 _raw_spin_unlock_irqrestore+0x1a/0x30 kernel/locking/spinlock.c:221
 spin_unlock_irqrestore include/linux/spinlock.h:425 [inline]
 __uart_port_unlock_irqrestore include/linux/serial_core.h:622 [inline]
 univ8250_console_device_unlock+0x36/0x40 drivers/tty/serial/8250/8250_core.c:420
 nbcon_emit_one kernel/printk/nbcon.c:1165 [inline]
 nbcon_kthread_func+0x595/0x690 kernel/printk/nbcon.c:1271
 kthread+0x223/0x270 kernel/kthread.c:436
 ret_from_fork+0x146/0x330 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

read to 0xffffffff895fa528 of 8 bytes by task 70 on cpu 0:
 timekeeping_cycles_to_ns kernel/time/timekeeping.c:477 [inline]
 timekeeping_get_ns kernel/time/timekeeping.c:482 [inline]
 ktime_get_with_offset+0x150/0x260 kernel/time/timekeeping.c:1048
 ktime_get_real include/linux/timekeeping.h:87 [inline]
 netif_rx_internal+0x1ec/0x210 net/core/dev.c:5791
 __netif_rx+0x21/0x170 net/core/dev.c:5834
 veth_forward_skb drivers/net/veth.c:326 [inline]
 veth_xmit+0x303/0x700 drivers/net/veth.c:380
 __netdev_start_xmit include/linux/netdevice.h:5432 [inline]
 netdev_start_xmit include/linux/netdevice.h:5441 [inline]
 xmit_one net/core/dev.c:3953 [inline]
 dev_hard_start_xmit+0x10c/0x380 net/core/dev.c:3969
 __dev_queue_xmit+0xbfd/0x1ec0 net/core/dev.c:4958
 dev_queue_xmit include/linux/netdevice.h:3464 [inline]
 neigh_resolve_output+0x3fb/0x470 net/core/neighbour.c:1616
 neigh_output include/net/neighbour.h:560 [inline]
 ip6_finish_output2+0x8c9/0xdb0 net/ipv6/ip6_output.c:138
 __ip6_finish_output net/ipv6/ip6_output.c:-1 [inline]
 ip6_finish_output+0x1e1/0x410 net/ipv6/ip6_output.c:221
 NF_HOOK_COND include/linux/netfilter.h:314 [inline]
 ip6_output+0x10a/0x280 net/ipv6/ip6_output.c:248
 dst_output include/net/dst.h:472 [inline]
 NF_HOOK include/linux/netfilter.h:325 [inline]
 ndisc_send_skb+0x52c/0x7a0 net/ipv6/ndisc.c:513
 ndisc_send_ns+0x78/0xe0 net/ipv6/ndisc.c:672
 addrconf_dad_work+0x714/0xbc0 net/ipv6/addrconf.c:4318
 process_one_work kernel/workqueue.c:3396 [inline]
 process_scheduled_works+0x56a/0xa50 kernel/workqueue.c:3479
 worker_thread+0x569/0x750 kernel/workqueue.c:3560
 kthread+0x223/0x270 kernel/kthread.c:436
 ret_from_fork+0x146/0x330 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245

value changed: 0x00106c83ad91ef5c -> 0x0010f9ee874e6c1e

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 UID: 0 PID: 70 Comm: kworker/u8:4 Tainted: G        W           syzkaller #0 PREEMPT(lazy) 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Workqueue: ipv6_addrconf addrconf_dad_work
==================================================================
bond2: (slave macvlan2): failed to get link speed/duplex
bond2: (slave macvlan2): failed to get link speed/duplex
bond2: (slave macvlan2): failed to get link speed/duplex
bond2: (slave macvlan2): failed to get link speed/duplex

Crashes (14):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/10/14 03:26 upstream ca3e345926b0 7321cd29 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/09/27 19:58 upstream efb44d93a620 a3c7249d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/08/26 16:01 upstream 73ae59e97596 a2b77b9e .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/08/24 07:36 upstream 388b607d107c 1e72964b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/08/08 18:14 upstream a7c7074b58d2 5d63f80b .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/07/30 14:39 upstream 11028ab62899 2377cd3d .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/07/24 03:56 upstream d326f83e819c 544adce9 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/07/20 10:07 upstream 82a47586c0b9 72524a66 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/06/28 01:22 upstream 780d569e6c4b fb92f11c .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/06/16 14:57 upstream b1cbabe84ca1 a3998659 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/06/05 21:27 upstream ddd664bbff63 48b6c3fa .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/05/16 23:11 upstream 6916d5703ddf de5aae85 .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/05/10 11:49 upstream 1bfaee9d3351 29233ece .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
2026/05/10 01:49 upstream e92b2872d0b1 29233ece .config console log report info [disk image] [vmlinux] [kernel image] ci2-upstream-kcsan-gce KCSAN: data-race in ktime_get_with_offset / timekeeping_update_from_shadow
* Struck through repros no longer work on HEAD.