[moderation] [virt?] KCSAN: data-race in virtqueue_get_buf_ctx / vring_interrupt (7)

2 views
Skip to first unread message

syzbot

unread,
Aug 12, 2025, 3:38:31 AM8/12/25
to syzkaller-upst...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 53e760d89498 Merge tag 'nfsd-6.17-1' of git://git.kernel.o..
git tree: upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=13f98c34580000
kernel config: https://syzkaller.appspot.com/x/.config?x=e229060118f4fc05
dashboard link: https://syzkaller.appspot.com/bug?extid=4d63e5dedf2218d56d21
compiler: Debian clang version 20.1.7 (++20250616065708+6146a88f6049-1~exp1~20250616065826.132), Debian LLD 20.1.7
CC: [eper...@redhat.com jaso...@redhat.com linux-...@vger.kernel.org m...@redhat.com virtual...@lists.linux.dev xuan...@linux.alibaba.com]

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

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/1d517dfaee02/disk-53e760d8.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/07305d6bc90d/vmlinux-53e760d8.xz
kernel image: https://storage.googleapis.com/syzbot-assets/b05a798f574d/bzImage-53e760d8.xz

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

==================================================================
BUG: KCSAN: data-race in virtqueue_get_buf_ctx / vring_interrupt

read-write to 0xffff888102727c50 of 2 bytes by task 5907 on cpu 0:
virtqueue_get_buf_ctx_split drivers/virtio/virtio_ring.c:854 [inline]
virtqueue_get_buf_ctx+0x3ca/0x590 drivers/virtio/virtio_ring.c:2545
virtqueue_get_buf+0x1f/0x30 drivers/virtio/virtio_ring.c:2551
virtscsi_vq_done+0x6a/0x100 drivers/scsi/virtio_scsi.c:187
virtscsi_poll_requests drivers/scsi/virtio_scsi.c:210 [inline]
virtscsi_tmf+0x10e/0x180 drivers/scsi/virtio_scsi.c:637
virtscsi_device_reset+0x139/0x160 drivers/scsi/virtio_scsi.c:664
scsi_try_bus_device_reset drivers/scsi/scsi_error.c:1004 [inline]
scsi_ioctl_reset+0x29c/0x490 drivers/scsi/scsi_error.c:2504
scsi_ioctl+0x5fd/0x14d0 drivers/scsi/scsi_ioctl.c:946
sg_ioctl+0x12fb/0x1360 drivers/scsi/sg.c:1159
vfs_ioctl fs/ioctl.c:51 [inline]
__do_sys_ioctl fs/ioctl.c:598 [inline]
__se_sys_ioctl+0xcb/0x140 fs/ioctl.c:584
__x64_sys_ioctl+0x43/0x50 fs/ioctl.c:584
x64_sys_call+0x1816/0x2ff0 arch/x86/include/generated/asm/syscalls_64.h:17
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xd2/0x200 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f

read to 0xffff888102727c50 of 2 bytes by interrupt on cpu 1:
more_used_split drivers/virtio/virtio_ring.c:807 [inline]
more_used drivers/virtio/virtio_ring.c:2683 [inline]
vring_interrupt+0xab/0x180 drivers/virtio/virtio_ring.c:2698
__handle_irq_event_percpu+0x93/0x440 kernel/irq/handle.c:158
handle_irq_event_percpu kernel/irq/handle.c:193 [inline]
handle_irq_event+0x64/0xf0 kernel/irq/handle.c:210
handle_edge_irq+0x154/0x470 kernel/irq/chip.c:855
generic_handle_irq_desc include/linux/irqdesc.h:173 [inline]
handle_irq arch/x86/kernel/irq.c:254 [inline]
call_irq_handler arch/x86/kernel/irq.c:-1 [inline]
__common_interrupt+0x60/0xb0 arch/x86/kernel/irq.c:325
common_interrupt+0x3e/0x90 arch/x86/kernel/irq.c:318
asm_common_interrupt+0x26/0x40 arch/x86/include/asm/idtentry.h:693
native_irq_enable arch/x86/include/asm/irqflags.h:-1 [inline]
arch_local_irq_enable arch/x86/include/asm/irqflags.h:119 [inline]
handle_softirqs+0x6d/0x290 kernel/softirq.c:563
__do_softirq kernel/softirq.c:613 [inline]
invoke_softirq kernel/softirq.c:453 [inline]
__irq_exit_rcu+0x3a/0xc0 kernel/softirq.c:680
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1050 [inline]
sysvec_apic_timer_interrupt+0x74/0x80 arch/x86/kernel/apic/apic.c:1050
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
console_flush_all+0x55b/0x730 arch/x86/include/asm/irqflags.h:-1
__console_flush_and_unlock kernel/printk/printk.c:3285 [inline]
console_unlock+0xa1/0x330 kernel/printk/printk.c:3325
vprintk_emit+0x388/0x650 kernel/printk/printk.c:2450
vprintk_default+0x26/0x30 kernel/printk/printk.c:2465
vprintk+0x1d/0x30 kernel/printk/printk_safe.c:82
_printk+0x79/0xa0 kernel/printk/printk.c:2475
__netdev_printk+0x321/0x3e0 net/core/dev.c:12588
netdev_err+0x9b/0xd0 net/core/dev.c:12632
bond_enslave+0x150e/0x2160 drivers/net/bonding/bond_main.c:2147
do_set_master+0x390/0x460 net/core/rtnetlink.c:2948
rtnl_newlink_create+0x426/0x620 net/core/rtnetlink.c:3839
__rtnl_newlink net/core/rtnetlink.c:3942 [inline]
rtnl_newlink+0xf29/0x12d0 net/core/rtnetlink.c:4057
rtnetlink_rcv_msg+0x5fb/0x6d0 net/core/rtnetlink.c:6946
netlink_rcv_skb+0x120/0x220 net/netlink/af_netlink.c:2552
rtnetlink_rcv+0x1c/0x30 net/core/rtnetlink.c:6973
netlink_unicast_kernel net/netlink/af_netlink.c:1320 [inline]
netlink_unicast+0x5c0/0x690 net/netlink/af_netlink.c:1346
netlink_sendmsg+0x58b/0x6b0 net/netlink/af_netlink.c:1896
sock_sendmsg_nosec net/socket.c:714 [inline]
__sock_sendmsg+0x145/0x180 net/socket.c:729
____sys_sendmsg+0x31e/0x4e0 net/socket.c:2614
___sys_sendmsg+0x17b/0x1d0 net/socket.c:2668
__sys_sendmsg net/socket.c:2700 [inline]
__do_sys_sendmsg net/socket.c:2705 [inline]
__se_sys_sendmsg net/socket.c:2703 [inline]
__x64_sys_sendmsg+0xd4/0x160 net/socket.c:2703
x64_sys_call+0x191e/0x2ff0 arch/x86/include/generated/asm/syscalls_64.h:47
do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
do_syscall_64+0xd2/0x200 arch/x86/entry/syscall_64.c:94
entry_SYSCALL_64_after_hwframe+0x77/0x7f

value changed: 0x043b -> 0x043c

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 UID: 0 PID: 5911 Comm: syz.1.801 Not tainted 6.17.0-rc1-syzkaller-00004-g53e760d89498 #0 PREEMPT(voluntary)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
==================================================================


---
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.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup

syzbot

unread,
Oct 7, 2025, 3:38:18 AM10/7/25
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