KCSAN: data-race in get_cpu_idle_time_us / tick_irq_enter (4)

10 views
Skip to first unread message

syzbot

unread,
Jan 6, 2022, 3:11:26 PM1/6/22
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 75acfdb6fd92 Merge tag 'net-5.16-final' of git://git.kerne..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=108f654fb00000
kernel config: https://syzkaller.appspot.com/x/.config?x=309badab33752916
dashboard link: https://syzkaller.appspot.com/bug?extid=55cb3f389b0d3d7acb71
compiler: Debian clang version 11.0.1-2, GNU ld (GNU Binutils for Debian) 2.35.2
CC: [fwei...@gmail.com linux-...@vger.kernel.org mi...@kernel.org tg...@linutronix.de]

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

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+55cb3f...@syzkaller.appspotmail.com

==================================================================
BUG: KCSAN: data-race in get_cpu_idle_time_us / tick_irq_enter

write to 0xffff888237c1df40 of 8 bytes by interrupt on cpu 0:
tick_nohz_stop_idle kernel/time/tick-sched.c:648 [inline]
tick_nohz_irq_enter kernel/time/tick-sched.c:1377 [inline]
tick_irq_enter+0x14a/0x240 kernel/time/tick-sched.c:1403
sysvec_apic_timer_interrupt+0x80/0xb0 arch/x86/kernel/apic/apic.c:1097
asm_sysvec_apic_timer_interrupt+0x12/0x20
native_safe_halt arch/x86/include/asm/irqflags.h:51 [inline]
arch_safe_halt arch/x86/include/asm/irqflags.h:89 [inline]
acpi_safe_halt drivers/acpi/processor_idle.c:109 [inline]
acpi_idle_do_entry drivers/acpi/processor_idle.c:553 [inline]
acpi_idle_enter+0x282/0x300 drivers/acpi/processor_idle.c:688
cpuidle_enter_state+0x2b4/0x7d0 drivers/cpuidle/cpuidle.c:237
cpuidle_enter+0x3c/0x60 drivers/cpuidle/cpuidle.c:351
call_cpuidle kernel/sched/idle.c:158 [inline]
cpuidle_idle_call kernel/sched/idle.c:239 [inline]
do_idle+0x1b2/0x250 kernel/sched/idle.c:306
cpu_startup_entry+0x15/0x20 kernel/sched/idle.c:403
rest_init+0xfa/0x100 init/main.c:725
arch_call_rest_init+0xa/0xb
start_kernel+0x5e4/0x669 init/main.c:1135
secondary_startup_64_no_verify+0xb1/0xbb

read to 0xffff888237c1df40 of 8 bytes by task 8500 on cpu 1:
get_cpu_idle_time_us+0x1dd/0x1f0 kernel/time/tick-sched.c:691
get_idle_time fs/proc/stat.c:54 [inline]
show_stat+0x8bf/0xdd0 fs/proc/stat.c:175
seq_read_iter+0x2e1/0x930 fs/seq_file.c:230
proc_reg_read_iter+0xd6/0x170 fs/proc/inode.c:296
call_read_iter include/linux/fs.h:2156 [inline]
io_iter_do_read fs/io_uring.c:3505 [inline]
io_read fs/io_uring.c:3562 [inline]
io_issue_sqe+0xa75/0x53b0 fs/io_uring.c:6675
__io_queue_sqe+0x20/0x440 fs/io_uring.c:7022
io_queue_sqe fs/io_uring.c:7064 [inline]
io_submit_sqe+0x77a/0x47d3 fs/io_uring.c:7267
io_submit_sqes+0x25d/0x670 fs/io_uring.c:7373
__do_sys_io_uring_enter fs/io_uring.c:10076 [inline]
__se_sys_io_uring_enter+0x212/0xb00 fs/io_uring.c:10018
__x64_sys_io_uring_enter+0x74/0x80 fs/io_uring.c:10018
do_syscall_x64 arch/x86/entry/common.c:50 [inline]
do_syscall_64+0x44/0xd0 arch/x86/entry/common.c:80
entry_SYSCALL_64_after_hwframe+0x44/0xae

value changed: 0x00000077e4132ec5 -> 0x00000077e41b7f43

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 8500 Comm: syz-executor.0 Tainted: G S W 5.16.0-rc8-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================


---
This report 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 syzk...@googlegroups.com.

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

syzbot

unread,
Jul 19, 2022, 8:23:19 PM7/19/22
to syzkaller-upst...@googlegroups.com
Auto-closing this bug as obsolete.
Crashes did not happen for a while, no reproducer and no activity.
Reply all
Reply to author
Forward
0 new messages