[libvirt] [PATCH] update domain status forcibly even if attach a device failed

Wen Congyang wency at cn.fujitsu.com
Thu Mar 24 06:32:50 UTC 2011


At 03/24/2011 03:26 AM, Eric Blake Write:
> On 02/17/2011 02:09 PM, Eric Blake wrote:
>> On 02/16/2011 08:32 PM, Wen Congyang wrote:
>>> Steps to reproduce this bug:
>>> 1. virsh attach-disk domain --source diskimage --target sdb --sourcetype file --driver qemu --subdriver qcow2
>>>    error: Failed to attach disk
>>>    error: operation failed: adding scsi-disk,bus=scsi0.0,scsi-id=1,drive=drive-scsi0-0-1,id=scsi0-0-1 device failed: Property 'scsi-disk.drive' can't find value 'drive-scsi0-0-1'
>>> 2. service libvirtd restart
>>>    Stopping libvirtd daemon:                                  [  OK  ]
>>>    Starting libvirtd daemon:                                  [  OK  ]
>>> 3. virsh attach-disk domain --source diskimage --target sdb --sourcetype file --driver qemu --subdriver raw  
>>>    error: Failed to attach disk
>>>    error: operation failed: adding lsi,id=scsi0,bus=pci.0,addr=0x6 device failed: Duplicate ID 'scsi0' for device
>>>
>>> The reason is that we create a new scsi controller but we do not update
>>> /var/run/libvirt/qemu/domain.xml.
>>
>> I agree that this is a bug, and that this patch is one way to solve
>> things; however, I'm not convinced it's necessarily the right way.
>>
>> Should we be instead rolling back and undoing the new controller
>> creation if adding the device fails?
>>
>> Should the successful addition of a controller save domain state at that
>> point, even though that means two saves instead of one if this succeeds
>> here?
>>
>> But, if others agree with this approach, then ACK to the code.
> 
> Given the silence, and that this is a real bug fix, let's go ahead and
> commit this as-is, and we can do a followup patch later if anyone has a
> better idea.

OK. I have pushed this patch. Thanks.

> 




More information about the libvir-list mailing list