KCSAN: data-race in data_alloc / data_push_tail

10 views
Skip to first unread message

syzbot

unread,
Jan 18, 2022, 2:07:26 PM1/18/22
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: e3a8b6a1e70c Merge tag 'slab-for-5.17-part2' of git://git...
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=12573c5bb00000
kernel config: https://syzkaller.appspot.com/x/.config?x=d443ab22c440893a
dashboard link: https://syzkaller.appspot.com/bug?extid=cef5be5a11dab5cbd7ac
compiler: Debian clang version 11.0.1-2, GNU ld (GNU Binutils for Debian) 2.35.2
CC: [ax...@kernel.dk linux...@vger.kernel.org linux-...@vger.kernel.org]

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+cef5be...@syzkaller.appspotmail.com

loop3: detected capacity change from 0 to 224
==================================================================
BUG: KCSAN: data-race in data_alloc / data_push_tail

write to 0xffffffff86d8dec0 of 8 bytes by task 31710 on cpu 0:
data_alloc+0x205/0x2b0 kernel/printk/printk_ringbuffer.c:1071
prb_reserve+0x920/0xbf0 kernel/printk/printk_ringbuffer.c:1549
vprintk_store+0x560/0xbb0 kernel/printk/printk.c:2175
vprintk_emit+0xac/0x3c0 kernel/printk/printk.c:2228
vprintk_default+0x22/0x30 kernel/printk/printk.c:2255
vprintk+0x7f/0x90 kernel/printk/printk_safe.c:50
_printk+0x76/0x97 kernel/printk/printk.c:2265
set_capacity_and_notify+0x170/0x1d0 block/genhd.c:89
loop_set_size drivers/block/loop.c:231 [inline]
loop_configure+0xd53/0xf50 drivers/block/loop.c:1054
lo_ioctl+0x633/0x1280
blkdev_ioctl+0x20e/0x440 block/ioctl.c:588
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:874 [inline]
__se_sys_ioctl+0xcb/0x140 fs/ioctl.c:860
__x64_sys_ioctl+0x3f/0x50 fs/ioctl.c:860
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

read to 0xffffffff86d8dec0 of 8 bytes by task 31709 on cpu 1:
data_make_reusable kernel/printk/printk_ringbuffer.c:587 [inline]
data_push_tail+0x138/0x470 kernel/printk/printk_ringbuffer.c:672
data_alloc+0xbc/0x2b0 kernel/printk/printk_ringbuffer.c:1043
prb_reserve+0x920/0xbf0 kernel/printk/printk_ringbuffer.c:1549
vprintk_store+0x560/0xbb0 kernel/printk/printk.c:2175
vprintk_emit+0xac/0x3c0 kernel/printk/printk.c:2228
vprintk_default+0x22/0x30 kernel/printk/printk.c:2255
vprintk+0x7f/0x90 kernel/printk/printk_safe.c:50
_printk+0x76/0x97 kernel/printk/printk.c:2265
set_capacity_and_notify+0x170/0x1d0 block/genhd.c:89
loop_set_size drivers/block/loop.c:231 [inline]
loop_configure+0xd53/0xf50 drivers/block/loop.c:1054
lo_ioctl+0x633/0x1280
blkdev_ioctl+0x20e/0x440 block/ioctl.c:588
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:874 [inline]
__se_sys_ioctl+0xcb/0x140 fs/ioctl.c:860
__x64_sys_ioctl+0x3f/0x50 fs/ioctl.c:860
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: 0x000000010000ee32 -> 0x000000010000fdb6

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 31709 Comm: syz-executor.3 Not tainted 5.16.0-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,
May 31, 2023, 1:30:41 PM5/31/23
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