could not hot-remove disabled NIC from Win2012 guest by 'devel_del id1'

Bug #1185311 reported by Amos Jianjun Kong
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Expired
Undecided
Unassigned

Bug Description

# qemu-latest-upstream -mon chardev=qmp,mode=control,pretty=on \
 -chardev socket,id=qmp,host=localhost,port=1234,server,nowait -vnc :0 \
 -monitor stdio /images/win2012-64-virtio.qcow2 \
 -device virtio-net-pci,netdev=ndev1,id=id1 -netdev tap,id=ndev1 \
 -device e1000,netdev=ndev2,id=id2 -netdev tap,id=ndev2 \
 -device rtl8139,netdev=ndev3,id=id3 -netdev tap,id=ndev3 \
 -smp 4 -m 3000 -usbdevice tablet

If disable nic in guest's "Network Connections" panel, nic could not be hot-removed through qemu monitor.

1) if disable nic in guest
(qemu) devel_del id1 (nic still in "Network Connections". if enable nic, nic can work)
(qemu) devel_del id1
(qemu) devel_del id1

2) if enable nic in guest
(qemu) devel_del id1 (nic will be removed, disappear from "Network Connections")
(qemu) devel_del id1
Device 'id1' not found

Could not reproduced this problem with all linux guests & other Windows guests
Problem exists with virtio-nic/e1000/rtl8139, it seems the problem of pci-hotplug in piix4.

Could not reproduce this problem with Vmware + win2012 guest.

Revision history for this message
Amos Jianjun Kong (amoskong) wrote :

hot-remove a disabled nic:

(qemu) device_del id1
 irq: -120008472, level :1, pmsts: 1
acpi_pm_tmr_update: bool :0
(qemu) gpe read 0 == 2
 irq: -120008472, level :1, pmsts: 0
acpi_pm_tmr_update: bool :0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 2 <== 0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 3 <== 0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe read 0 == 2
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 0 <== 2
gpe read 1 == 0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 2 <== 253
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 3 <== 255
pci_up_read 38
pci_down_read 8
...
...
pci_up_read 38
pci_down_read 8
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 2 <== 255
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 3 <== 255

Revision history for this message
Amos Jianjun Kong (amoskong) wrote :

hot-remove an enabled nic:

(qemu) device_del id1
 irq: -120008472, level :1, pmsts: 1
acpi_pm_tmr_update: bool :0
(qemu) gpe read 0 == 2
 irq: -120008472, level :1, pmsts: 0
acpi_pm_tmr_update: bool :0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 2 <== 0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 3 <== 0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe read 0 == 2
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 0 <== 2
gpe read 1 == 0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 2 <== 253
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 3 <== 255
pci_up_read 38
pci_down_read 8
....
....
pci_up_read 38
pci_down_read 8
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 2 <== 255
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 3 <== 255
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 2 <== 255
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 3 <== 255
pciej write 8 <== 8
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 2 <== 255
 irq: -120008472, level :0, pmsts: 0
acpi_pm_tmr_update: bool :0
gpe write 3 <== 255

Revision history for this message
Thomas Huth (th-huth) wrote :

Triaging old bug tickets... can you still reproduce this issue with the latest version of QEMU? Or could we close this ticket nowadays?

Changed in qemu:
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for QEMU because there has been no activity for 60 days.]

Changed in qemu:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.