KCSAN: data-race in add_timer / timer_clear_idle (2)

From: syzbot
Date: Thu Dec 12 2019 - 18:33:25 EST


Hello,

syzbot found the following crash on:

HEAD commit: ef798c30 x86, kcsan: Enable KCSAN for x86
git tree: https://github.com/google/ktsan.git kcsan
console output: https://syzkaller.appspot.com/x/log.txt?x=156e052ee00000
kernel config: https://syzkaller.appspot.com/x/.config?x=8077a73bd604a9d4
dashboard link: https://syzkaller.appspot.com/bug?extid=c051abeff5e2e8ac40f0
compiler: gcc (GCC) 9.0.0 20181231 (experimental)

Unfortunately, I don't have any reproducer for this crash yet.

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+c051abeff5e2e8ac40f0@xxxxxxxxxxxxxxxxxxxxxxxxx

==================================================================
BUG: KCSAN: data-race in add_timer / timer_clear_idle

read to 0xffff88812be1b6e4 of 1 bytes by task 23 on cpu 1:
forward_timer_base kernel/time/timer.c:892 [inline]
__mod_timer kernel/time/timer.c:1009 [inline]
mod_timer kernel/time/timer.c:1100 [inline]
add_timer+0x3a6/0x550 kernel/time/timer.c:1136
__queue_delayed_work+0x13b/0x1d0 kernel/workqueue.c:1649
queue_delayed_work_on+0xf3/0x110 kernel/workqueue.c:1674
queue_delayed_work include/linux/workqueue.h:509 [inline]
batadv_mcast_start_timer net/batman-adv/multicast.c:71 [inline]
batadv_mcast_mla_update+0x11ad/0x19e0 net/batman-adv/multicast.c:949
process_one_work+0x3d4/0x890 kernel/workqueue.c:2269
worker_thread+0xa0/0x800 kernel/workqueue.c:2415
kthread+0x1d4/0x200 drivers/block/aoe/aoecmd.c:1253
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:352

write to 0xffff88812be1b6e4 of 1 bytes by task 0 on cpu 0:
timer_clear_idle+0x42/0x50 kernel/time/timer.c:1675
tick_nohz_restart_sched_tick kernel/time/tick-sched.c:839 [inline]
__tick_nohz_idle_restart_tick+0x36/0x1b0 kernel/time/tick-sched.c:1140
tick_nohz_idle_exit+0x1af/0x1e0 kernel/time/tick-sched.c:1181
do_idle+0xb1/0x280 kernel/sched/idle.c:276
cpu_startup_entry+0x1b/0x20 kernel/sched/idle.c:355
rest_init+0xec/0xf6 init/main.c:452
arch_call_rest_init+0x17/0x37
start_kernel+0x838/0x85e init/main.c:786
x86_64_start_reservations+0x29/0x2b arch/x86/kernel/head64.c:490
x86_64_start_kernel+0x72/0x76 arch/x86/kernel/head64.c:471
secondary_startup_64+0xa4/0xb0 arch/x86/kernel/head_64.S:241

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.4.0-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================


---
This bug is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzkaller@xxxxxxxxxxxxxxxxx

syzbot will keep track of this bug report. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.