Hide Forgot
Description of problem: when do disk hotplug with command attach-device, if give the wrong disk.xml content, libvirt doesn't report error, although the disk is not attached to the guest cat disk.xml <disk type='ttt' device='disk'> <driver name='qemu' type='raw'/> <source file='/var/lib/libvirt/images/tt.img'/> <target dev='vdc' bus='virtio'/> </disk> virsh attach-device domain disk.xml Device attached successfully it is a regression bug, because when I test on libvirt-0.8.7-18.el6.x86_64, it will report error like error: Failed to attach device from disk.xml error: internal error unknown disk type 'ttt' Version-Release number of selected component (if applicable): libvirt-0.9.3-2.el6.x86_64 qemu-kvm-0.12.1.2-2.169.el6.x86_64 kernel-2.6.32-166.el6.x86_64 How reproducible: 100% Steps to Reproduce: 1. start a guest 2. qemu-img create tt.img 10M 3. cat disk.xml <disk type='ttt' device='disk'> <driver name='qemu' type='raw'/> <source file='/var/lib/libvirt/images/tt.img'/> <target dev='vdc' bus='virtio'/> </disk> 4. virsh attach-device guest disk.xml Actual results: Device attached successfully Expected results: error: Failed to attach device from disk.xml error: internal error unknown disk type 'ttt' Additional info:
patch posted to upstream, https://www.redhat.com/archives/libvir-list/2011-July/msg00745.html
commit fab4f0c699d3f0b330060aa3fb2743c6696271de Author: Osier Yang <jyang> Date: Sat Jul 16 11:24:49 2011 +0800 qemu: Fix a regression of attaching device The regression is introduced by Commit da1eba6b, the new codes with this commit doesn't reset "ret" to "-1" when codes with this commit doesn't reset "ret" to "-1" when it fails on parsing the device XML (live device attachment) This patch changes the codes to reset the "ret" and "-1", and also changes the codes so that it don't modify "ret" for condition checking. How to reproduce: % cat test.xml <disk type='oops' device='disk'> <driver name='qemu' type='raw'/> <source file='/var/lib/libvirt/images/test.img'/> <target dev='vda' bus='virtio'/> </disk> % virsh attach-device $domain test.xml Device attached successfully The device attachment failed actually with error "unknown disk type 'oops'", however, it reports success. Patch is in upstream, move to POST.
Test this bug on libvirt-0.9.4-0rc2.el6, verified. libvirt-0.9.4-0rc2.el6 qemu-kvm-0.12.1.2-2.172.el6 kernel-2.6.32-171.el6 when attach device use the wrong disk type(such as 'ttt'), get error message. #virsh attach-device test disk.xml error: Failed to attach device from disk.xml error: internal error unknown disk type 'ttt'
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHBA-2011-1513.html