Description of problem: Hotplug PCI is not supported Version-Release number of selected component (if applicable): RHEL5.6-Server-x86_64-kvm kvm-83-199.el5 kvm-qemu-img-83-199.el5 libvirt-0.8.2-6.el5 How reproducible: Always Steps to Reproduce: 1.start guest # virsh start demo 2.# virsh nodedev-list --tree 3.# virsh nodedev-dumpxml pci_0000_00_19_0 <device> <name>pci_0000_00_19_0</name> <parent>computer</parent> <driver> <name>e1000e</name> </driver> <capability type='pci'> <domain>0</domain> <bus>0</bus> <slot>25</slot> <function>0</function> <product id='0x10bd'>82566DM-2 Gigabit Network Connection</product> <vendor id='0x8086'>Intel Corporation</vendor> </capability> </device> 4.# virsh attach-device demo nodedev.xml Actual results: step4: # virsh attach-device demo nodedev.xml error: Failed to attach device from nodedev.xml error: operation failed: parsing pci_add reply failed: Expected results: The device is hot-plug to guest sucessfully Additional info:
Hi mzhan, You need to provide your nodedev.xml and guest log, and it should be a managed mode in your nodedev.xml.
# virsh nodedev-dumpxml pci_8086_10de <device> <name>pci_8086_10de</name> <parent>computer</parent> <driver> <name>e1000e</name> </driver> <capability type='pci'> <domain>0</domain> <bus>0</bus> <slot>25</slot> <function>0</function> <product id='0x10de'>82567LM-3 Gigabit Network Connection</product> <vendor id='0x8086'>Intel Corporation</vendor> </capability> </device> # cat nodedev.xml <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address bus='0' slot='25' function='0'/> </source> </hostdev> # virsh attach-device test1 nodedev.xml error: Failed to attach device from nodedev.xml error: operation failed: parsing pci_add reply failed: # tail -f /var/log/libvirt/qemu/test1.log no output # tail -f /var/log/messages Oct 7 23:13:58 dhcp-65-85 avahi-daemon[3565]: Interface eth0.IPv4 no longer relevant for mDNS. Oct 7 23:13:58 dhcp-65-85 avahi-daemon[3565]: Leaving mDNS multicast group on interface eth0.IPv4 with address 10.66.65.85. Oct 7 23:13:58 dhcp-65-85 dhclient: receive_packet failed on eth0: Network is down Oct 7 23:13:58 dhcp-65-85 dnsmasq[3700]: reading /etc/resolv.conf Oct 7 23:13:58 dhcp-65-85 dnsmasq[3680]: reading /etc/resolv.conf Oct 7 23:13:58 dhcp-65-85 dnsmasq[3700]: using nameserver 172.16.52.28#53 Oct 7 23:13:58 dhcp-65-85 dnsmasq[3680]: using nameserver 172.16.52.28#53 Oct 7 23:13:58 dhcp-65-85 dnsmasq[3700]: using nameserver 10.32.63.5#53 Oct 7 23:13:58 dhcp-65-85 dnsmasq[3680]: using nameserver 10.32.63.5#53 Oct 7 23:13:58 dhcp-65-85 dnsmasq[3700]: using nameserver 10.66.127.10#53 Oct 7 23:13:58 dhcp-65-85 dnsmasq[3680]: using nameserver 10.66.127.10#53 Oct 7 23:13:58 dhcp-65-85 kernel: ACPI: PCI interrupt for device 0000:00:19.0 disabled Oct 7 23:13:58 dhcp-65-85 avahi-daemon[3565]: Withdrawing address record for 10.66.65.85 on eth0. Oct 7 23:13:58 dhcp-65-85 kernel: qemu-kvm[5106]: segfault at 0000000000000000 rip 000000000052a5f3 rsp 00007fff867869e0 error 4 Oct 7 23:13:58 dhcp-65-85 setroubleshoot: SELinux is preventing qemu-kvm (svirt_t) "sys_admin" to <Unknown> (svirt_t). For complete SELinux messages. run sealert -l bf15a87d-eb4d-48f5-8b20-dbdcf5c86a23 Oct 7 23:13:58 dhcp-65-85 setroubleshoot: SELinux is preventing qemu-kvm (svirt_t) "sys_admin" to <Unknown> (svirt_t). For complete SELinux messages. run sealert -l bf15a87d-eb4d-48f5-8b20-dbdcf5c86a23 Oct 7 23:13:58 dhcp-65-85 libvirtd: 23:13:58.338: error : qemuMonitorTextAddPCIHostDevice:1542 : operation failed: parsing pci_add reply failed: Oct 7 23:13:58 dhcp-65-85 setroubleshoot: SELinux is preventing qemu-kvm (svirt_t) "sys_admin" to <Unknown> (svirt_t). For complete SELinux messages. run sealert -l bf15a87d-eb4d-48f5-8b20-dbdcf5c86a23 Oct 7 23:13:58 dhcp-65-85 setroubleshoot: SELinux is preventing qemu-kvm (svirt_t) "sys_admin" to <Unknown> (svirt_t). For complete SELinux messages. run sealert -l bf15a87d-eb4d-48f5-8b20-dbdcf5c86a23 Oct 7 23:13:58 dhcp-65-85 kernel: virbr0: port 1(vnet0) entering disabled state Oct 7 23:13:58 dhcp-65-85 kernel: PCI: Enabling device 0000:00:19.0 (0100 -> 0102) Oct 7 23:13:58 dhcp-65-85 kernel: ACPI: PCI Interrupt 0000:00:19.0[A] -> GSI 21 (level, low) -> IRQ 58 Oct 7 23:13:58 dhcp-65-85 setroubleshoot: SELinux is preventing qemu-kvm (svirt_t) "sys_admin" to <Unknown> (svirt_t). For complete SELinux messages. run sealert -l bf15a87d-eb4d-48f5-8b20-dbdcf5c86a23 Oct 7 23:13:58 dhcp-65-85 setroubleshoot: SELinux is preventing qemu-kvm (svirt_t) "sys_admin" to <Unknown> (svirt_t). For complete SELinux messages. run sealert -l bf15a87d-eb4d-48f5-8b20-dbdcf5c86a23 Oct 7 23:13:58 dhcp-65-85 kernel: device vnet0 left promiscuous mode Oct 7 23:13:58 dhcp-65-85 kernel: virbr0: port 1(vnet0) entering disabled state Oct 7 23:13:58 dhcp-65-85 setroubleshoot: SELinux is preventing qemu-kvm (svirt_t) "sys_admin" to <Unknown> (svirt_t). For complete SELinux messages. run sealert -l bf15a87d-eb4d-48f5-8b20-dbdcf5c86a23 Oct 7 23:13:58 dhcp-65-85 NET[5260]: /sbin/dhclient-script : updated /etc/resolv.conf Oct 7 23:13:58 dhcp-65-85 kernel: eth0: (PCI Express:2.5GB/s:Width x1) b8:ac:6f:37:d8:81 Oct 7 23:13:58 dhcp-65-85 kernel: eth0: Intel(R) PRO/1000 Network Connection Oct 7 23:13:58 dhcp-65-85 kernel: eth0: MAC: 8, PHY: 8, PBA No: 2011ff-0ff Oct 7 23:13:58 dhcp-65-85 libvirtd: 23:13:58.501: warning : SELinuxRestoreSecurityFileLabel:385 : cannot lookup default selinux label for /sys/bus/pci/devices/0000:00:19.0/resource2 Oct 7 23:13:58 dhcp-65-85 libvirtd: 23:13:58.501: warning : qemudDomainAttachHostDevice:8001 : Unable to restore host device labelling on hotplug fail Oct 7 23:14:01 dhcp-65-85 kernel: e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX/TX Oct 7 23:14:01 dhcp-65-85 dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 Oct 7 23:14:07 dhcp-65-85 dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67 Oct 7 23:14:07 dhcp-65-85 dhclient: DHCPACK from 10.66.65.254 Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: New relevant interface eth0.IPv4 for mDNS. Oct 7 23:14:07 dhcp-65-85 dnsmasq[3700]: reading /etc/resolv.conf Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: Joining mDNS multicast group on interface eth0.IPv4 with address 10.66.65.85. Oct 7 23:14:07 dhcp-65-85 dnsmasq[3700]: using nameserver 172.16.52.28#53 Oct 7 23:14:07 dhcp-65-85 dnsmasq[3700]: using nameserver 10.32.63.5#53 Oct 7 23:14:07 dhcp-65-85 dnsmasq[3700]: using nameserver 10.66.127.10#53 Oct 7 23:14:07 dhcp-65-85 dnsmasq[3680]: reading /etc/resolv.conf Oct 7 23:14:07 dhcp-65-85 dnsmasq[3680]: using nameserver 172.16.52.28#53 Oct 7 23:14:07 dhcp-65-85 dnsmasq[3680]: using nameserver 10.32.63.5#53 Oct 7 23:14:07 dhcp-65-85 dnsmasq[3680]: using nameserver 10.66.127.10#53 Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: Registering new address record for 10.66.65.85 on eth0. Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: Withdrawing address record for 10.66.65.85 on eth0. Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: Leaving mDNS multicast group on interface eth0.IPv4 with address 10.66.65.85. Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: iface.c: interface_mdns_mcast_join() called but no local address available. Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: Interface eth0.IPv4 no longer relevant for mDNS. Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: New relevant interface eth0.IPv4 for mDNS. Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: Joining mDNS multicast group on interface eth0.IPv4 with address 10.66.65.85. Oct 7 23:14:07 dhcp-65-85 NET[5506]: /sbin/dhclient-script : updated /etc/resolv.conf Oct 7 23:14:07 dhcp-65-85 avahi-daemon[3565]: Registering new address record for 10.66.65.85 on eth0. Oct 7 23:14:07 dhcp-65-85 dhclient: bound to 10.66.65.85 -- renewal in 14381 seconds.
*** This bug has been marked as a duplicate of bug 638859 ***