operating system: 0.908 device: 0.889 boot: 0.889 PID: 0.887 architecture: 0.864 network: 0.861 debug: 0.855 ppc: 0.855 performance: 0.834 KVM: 0.827 semantic: 0.825 peripherals: 0.824 i386: 0.792 virtual: 0.787 x86: 0.765 register: 0.755 kernel: 0.746 socket: 0.745 permissions: 0.739 arm: 0.737 graphic: 0.734 files: 0.705 VMM: 0.695 risc-v: 0.657 hypervisor: 0.624 user-level: 0.607 vnc: 0.588 assembly: 0.571 TCG: 0.567 alpha: 0.545 mistranslation: 0.462 [Qemu-devel] [BUG]pcibus_reset assertion failure on guest reboot Qemu-2.6.2 Start a vm with vhost-net , do reboot and hot-unplug viritio-net nic in short time, we touch pcibus_reset assertion failure. Here is qemu log: 22:29:46.359386+08:00 acpi_pm1_cnt_write -> guest do soft power off 22:29:46.785310+08:00 qemu_devices_reset 22:29:46.788093+08:00 virtio_pci_device_unplugged -> virtio net unpluged 22:29:46.803427+08:00 pcibus_reset: Assertion `bus->irq_count[i] == 0' failed. Here is stack info: (gdb) bt #0 0x00007f9a336795d7 in raise () from /usr/lib64/libc.so.6 #1 0x00007f9a3367acc8 in abort () from /usr/lib64/libc.so.6 #2 0x00007f9a33672546 in __assert_fail_base () from /usr/lib64/libc.so.6 #3 0x00007f9a336725f2 in __assert_fail () from /usr/lib64/libc.so.6 #4 0x0000000000641884 in pcibus_reset (qbus=0x29eee60) at hw/pci/pci.c:283 #5 0x00000000005bfc30 in qbus_reset_one (bus=0x29eee60, opaque=) at hw/core/qdev.c:319 #6 0x00000000005c1b19 in qdev_walk_children (dev=0x29ed2b0, pre_devfn=0x0, pre_busfn=0x0, post_devfn=0x5c2440 ... #7 0x00000000005c1c59 in qbus_walk_children (bus=0x2736f80, pre_devfn=0x0, pre_busfn=0x0, post_devfn=0x5c2440 ... #8 0x00000000005513f5 in qemu_devices_reset () at vl.c:1998 #9 0x00000000004cab9d in pc_machine_reset () at /home/abuild/rpmbuild/BUILD/qemu-kvm-2.6.0/hw/i386/pc.c:1976 #10 0x000000000055148b in qemu_system_reset (address@hidden) at vl.c:2011 #11 0x000000000055164f in main_loop_should_exit () at vl.c:2169 #12 0x0000000000551719 in main_loop () at vl.c:2212 #13 0x000000000041c9a8 in main (argc=, argv=, envp=) at vl.c:5130 (gdb) f 4 ... (gdb) p bus->irq_count[0] $6 = 1 Seems pci_update_irq_disabled doesn't work well can anyone help?