virsh attach-device can't attach a new device to a kvm guest OS
Issue
- virsh attach-device can't attach a new device to a kvm guest OS.
-
We ran virsh attach-device while a kvm guest OS is not running. The command failed with the following error messages.
# virsh attach-device RHEL60beta1_kvm disk1.xml error: Failed to attach device from disk1.xml error: Requested operation is not valid: cannot attach device on inactive domain -
Additionally, we ran "virsh attach-device" while the kvm guest OS is running. The command failed with the following error messages.
# virsh attach-device RHEL60beta1_kvm disk1.xml error: Failed to attach device from disk1.xml error: internal error unable to execute QEMU command 'drive_add': The command drive_add has not been found -
Step to Reproduce:
0. Define a new device in an XML file.
# cat disk1.xml
<disk type='block' device='disk'>
<driver name='qemu'/>
<source dev='/dev/sdc1'/>
<target dev='vdd' bus='virtio'/>
<alias name='virtio-disk0'/>
</disk>
[Case 1: A kvm guest OS is not running.]
1-1. Run the following command to shut down a kvm guest OS.
# virsh shutdown <kvm-guestOS-name>
1-2. Run the following command to check that the kvm guest OS is not running.
# virsh list --all
Id Name State
----------------------------------
- RHEL60beta1_kvm shut off
1-3. Run the following command to attach the new device to the kvm guest OS.
# virsh attach-device RHEL60beta1_kvm disk1.xml
[Case 2: A kvm guest OS is running.]
2-1. Run the following command to start a kvm guest OS.
# virsh start <kvm-guestOS-name>
2-2. Run the following command to check that the kvm guest OS is running.
# virsh list --all
Id Name State
----------------------------------
30 RHEL60beta1_kvm running
2-3. Run the following command to attach the new device to the kvm guest OS.
# virsh attach-device RHEL60beta1_kvm disk1.xml
We know this problem is related to BZ573946 and BZ581963.
BZ573946: QMP: broken drive hotplug due to missing 'blockdev_add' /
'drive_add' commands in QEMU
(https://bugzilla.redhat.com/show_bug.cgi?id=573946)
BZ581963: QMP: missing drive_add command in JSON mode
(https://bugzilla.redhat.com/show_bug.cgi?id=581963)
Environment
- Red Hat Enterprise Linux 6.0
- x86_64
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
