From: "Michael S. Tsirkin" <mst@redhat.com>
To: syzbot <syzbot+a1c8effc62c569d4bd25@syzkaller.appspotmail.com>
Cc: eperezma@redhat.com, jasowangio@gmail.com,
linux-kernel@vger.kernel.org, syzkaller-bugs@googlegroups.com,
virtualization@lists.linux.dev, xuanzhuo@linux.alibaba.com
Subject: Re: [syzbot] [virt?] WARNING in virtio_dev_remove
Date: Fri, 31 Jul 2026 20:15:25 -0400 [thread overview]
Message-ID: <20260731200905-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <6a6d3721.13bfb6d0.1ecdd5.024f.GAE@google.com>
On Fri, Jul 31, 2026 at 05:00:33PM -0700, syzbot wrote:
> Hello,
>
> syzbot found the following issue on:
>
> HEAD commit: 11028ab62899 Merge tag 'probes-fixes-v7.2-rc5' of git://gi..
> git tree: upstream
> console+strace: https://syzkaller.appspot.com/x/log.txt?x=11c625b9580000
> kernel config: https://syzkaller.appspot.com/x/.config?x=cb17729fb04b1e3a
> dashboard link: https://syzkaller.appspot.com/bug?extid=a1c8effc62c569d4bd25
> compiler: Debian clang version 22.1.8 (++20260613092233+e80beda6e255-1~exp1~20260613092250.77), Debian LLD 22.1.8
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=17405499580000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=1583649e580000
So I read this reproducer:
memcpy((void*)0x200000000140, "sys/bus/pci/devices/0000:00:04.0/config\000",
40);
res = syscall(__NR_openat, /*fd=*/0xffffff9c, /*file=*/0x200000000140ul,
/*flags=O_RDWR*/ 2, /*mode=*/0);
if (res != -1)
r[0] = res;
// pwrite64 arguments: [
// fd: fd (resource)
// buf: ptr[in, buffer] {
// buffer: {00 00} (length 0x2)
// }
// count: len = 0x2 (8 bytes)
// pos: intptr = 0x4 (8 bytes)
// ]
memset((void*)0x200000000180, 0, 2);
syscall(__NR_pwrite64, /*fd=*/r[0], /*buf=*/0x200000000180ul, /*count=*/2ul,
/*pos=*/4ul);
So it writes 0 into pci command, effectively killing the device,
and then is unhappy that the driver prints warnings?
Who thought it's a good idea? Why?
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/0afad3dd27f4/disk-11028ab6.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/2e1441f9c31d/vmlinux-11028ab6.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/5f0b8bdf00cd/bzImage-11028ab6.xz
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+a1c8effc62c569d4bd25@syzkaller.appspotmail.com
>
> ------------[ cut here ]------------
> dev->config->get_status(dev)
> WARNING: drivers/virtio/virtio.c:378 at virtio_dev_remove+0x18b/0x1b0 drivers/virtio/virtio.c:378, CPU#0: syz-executor501/5611
> Modules linked in:
> CPU: 0 UID: 0 PID: 5611 Comm: syz-executor501 Not tainted syzkaller #0 PREEMPT_{RT,(full)}
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
> RIP: 0010:virtio_dev_remove+0x18b/0x1b0 drivers/virtio/virtio.c:378
> Code: 4c 89 f7 2e 2e 2e 41 ff d3 0c 01 0f b6 f0 4c 89 f7 4d 89 fb 5b 41 5c 41 5d 41 5e 41 5f 5d 2e e9 cb 7e c1 1a e8 96 50 87 fc 90 <0f> 0b 90 e9 6e ff ff ff 44 89 e9 80 e1 07 38 c1 0f 8c c2 fe ff ff
> RSP: 0018:ffffc9000430f7d8 EFLAGS: 00010293
> RAX: ffffffff853e8a5a RBX: ffff8880207766d0 RCX: ffff8880121c8000
> RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
> RBP: 00000000000000ff R08: 0000000000000000 R09: 0000000000000000
> R10: dffffc0000000000 R11: ffffffff8540e710 R12: 1ffff110040eecda
> R13: dffffc0000000000 R14: ffff888020776000 R15: ffffffff8bd67c98
> FS: 0000555584740400(0000) GS:ffff888125c41000(0000) knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> CR2: 00007fe020e42e9c CR3: 000000003c1e4000 CR4: 00000000003526f0
> Call Trace:
> <TASK>
> device_remove drivers/base/dd.c:616 [inline]
> __device_release_driver drivers/base/dd.c:1349 [inline]
> device_release_driver_internal+0x48b/0x880 drivers/base/dd.c:1372
> bus_remove_device+0x449/0x560 drivers/base/bus.c:664
> device_del+0x528/0x8f0 drivers/base/core.c:3961
> device_unregister+0x21/0xf0 drivers/base/core.c:4002
> unregister_virtio_device+0x37/0x60 drivers/virtio/virtio.c:594
> virtio_pci_remove+0x7f/0xf0 drivers/virtio/virtio_pci_common.c:758
> pci_device_remove+0x99/0x1c0 drivers/pci/pci-driver.c:512
> device_remove drivers/base/dd.c:616 [inline]
> __device_release_driver drivers/base/dd.c:1349 [inline]
> device_release_driver_internal+0x48b/0x880 drivers/base/dd.c:1372
> pci_stop_dev drivers/pci/remove.c:27 [inline]
> pci_stop_bus_device+0xf6/0x120 drivers/pci/remove.c:93
> pci_stop_and_remove_bus_device drivers/pci/remove.c:128 [inline]
> pci_stop_and_remove_bus_device_locked+0x77/0xb0 drivers/pci/remove.c:136
> remove_store+0xe5/0x150 drivers/pci/pci-sysfs.c:523
> kernfs_fop_write_iter+0x3a5/0x540 fs/kernfs/file.c:345
> new_sync_write fs/read_write.c:595 [inline]
> vfs_write+0x61e/0xbb0 fs/read_write.c:687
> ksys_write+0x156/0x270 fs/read_write.c:739
> do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
> do_syscall_64+0x174/0x580 arch/x86/entry/syscall_64.c:94
> entry_SYSCALL_64_after_hwframe+0x77/0x7f
> RIP: 0033:0x7f5f1782a589
> Code: c0 79 93 eb d5 48 8d 7c 1d 00 eb 99 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 d8 ff ff ff f7 d8 64 89 01 48
> RSP: 002b:00007ffded968938 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
> RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f5f1782a589
> RDX: 0000000000000001 RSI: 0000200000000200 RDI: 0000000000000004
> RBP: 0000000000000001 R08: 0000000000000006 R09: 0000000000000006
> R10: 0000000000000006 R11: 0000000000000246 R12: 00007ffded968aa8
> R13: 431bde82d7b634db R14: 00007f5f178bdc40 R15: 0000000000000002
> </TASK>
>
>
> ---
> 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 syzkaller@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 syzbot to run the reproducer, reply with:
> #syz test: git://repo/address.git branch-or-commit-hash
> If you attach or paste a git patch, syzbot will apply it before testing.
>
> 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
prev parent reply other threads:[~2026-08-01 0:15 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-01 0:00 [syzbot] [virt?] WARNING in virtio_dev_remove syzbot
2026-08-01 0:15 ` Michael S. Tsirkin [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260731200905-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=eperezma@redhat.com \
--cc=jasowangio@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=syzbot+a1c8effc62c569d4bd25@syzkaller.appspotmail.com \
--cc=syzkaller-bugs@googlegroups.com \
--cc=virtualization@lists.linux.dev \
--cc=xuanzhuo@linux.alibaba.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.