[et-mgmt-tools] [PATCH] In virt-manager GUI, when the disk is added, VM cannot be started.
Hugh Brock
hbrock at redhat.com
Wed Jun 13 19:21:53 UTC 2007
Daniel P. Berrange wrote:
> On Fri, Jun 08, 2007 at 04:57:37PM +0900, Masayuki Sunou wrote:
>> Hi
>>
>> When the disk is added to active VM by virt-manager, VM cannot be
>> restarted after VM is stopped.
>> --> Bugzilla Bug 239763
>> https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=239763
>>
>> This patch fixes it.
>>
>> When the device is attached to active VM, virt-manager adds the device
>> twice in add_device() of "domain.py".
>> 1. Call attachDevice()
>> 2. Call define_domain() after the XML is updated
>> Therefore, the same device is doubly attached.
>> (So, when the device is disk, VM cannot be started)
>>
>> This patch fixes "domain.py" as follows so that the same device is not
>> doubly attached.
>> VM is active : Call attachDevice() only
>
> It is implementation defined whether attachDevice() persists te changes
> it makes. In Xen 3.1.0 it happens to persist them, but in earlier Xen
> it does not. So we still need to use define_domain as well.
>
>> VM is inactive : Call define_domain() after the XML is updated
>>
>>
>> Signed-off-by: Masayuki Sunou <fj1826dm at aa.jp.fujitsu.com>
>>
>> Thanks,
>> Masayuki Sunou.
>>
>> ----------------------------------------------------------------------
>> diff -r 27ad8c7fbc3e src/virtManager/domain.py
>> --- a/src/virtManager/domain.py Thu May 24 16:49:13 2007 -0400
>> +++ b/src/virtManager/domain.py Sat Jun 09 14:45:20 2007 +0900
>> @@ -540,15 +540,15 @@ class vmmDomain(gobject.GObject):
>>
>> if self.is_active():
>> self.vm.attachDevice(xml)
>> -
>> - vmxml = self.vm.XMLDesc(0)
>
> The key is that we should be calling vm.XMLDesc(0) before the call
> to attachDevice() so we get the original XML prior to any device
> addition. I'll add such a fix.
>
I have made this change, see
http://hg.et.redhat.com/virt/applications/virt-manager--devel?cs=643e8d92e3cf
--Hugh
--
Red Hat Virtualization Group http://redhat.com/virtualization
Hugh Brock | virt-manager http://virt-manager.org
hbrock at redhat.com | virtualization library http://libvirt.org
More information about the et-mgmt-tools
mailing list