[Kimchi-devel] [PATCH] Detach group of PCI Devices from host before attaching to guest
Daniel Henrique Barboza
dhbarboza82 at gmail.com
Fri Jul 17 12:40:14 UTC 2015
Patch applied to master branch of https://github.com/danielhb/kimchi
Thanks!
On 07/16/2015 03:55 PM, Daniel Henrique Barboza wrote:
> Reviewed-by: Daniel Barboza <dhbarboza82 at gmail.com>
>
> On 07/16/2015 01:42 PM, Jose Ricardo Ziviani wrote:
>> - A PCI device can have more than one function. In this case each
>> function must be detached from host before attaching to the vm.
>>
>> Signed-off-by: Jose Ricardo Ziviani <joserz at linux.vnet.ibm.com>
>> ---
>> src/kimchi/model/vmhostdevs.py | 16 ++++++++++++++++
>> 1 file changed, 16 insertions(+)
>>
>> diff --git a/src/kimchi/model/vmhostdevs.py
>> b/src/kimchi/model/vmhostdevs.py
>> index ea75fce..76033f0 100644
>> --- a/src/kimchi/model/vmhostdevs.py
>> +++ b/src/kimchi/model/vmhostdevs.py
>> @@ -196,6 +196,22 @@ class VMHostDevsModel(object):
>> pci_infos = [dev_model.lookup(dev_name) for dev_name in
>> group_names]
>> pci_infos.append(dev_info)
>>
>> + # all devices in the group that is going to be attached to
>> the vm
>> + # must be detached from the host first
>> + with RollbackContext() as rollback:
>> + for pci_info in pci_infos:
>> + try:
>> + dev = self.conn.get().nodeDeviceLookupByName(
>> + pci_info['name'])
>> + dev.dettach()
>> + except Exception:
>> + raise OperationFailed('KCHVMHDEV0005E',
>> + {'name': pci_info['name']})
>> + else:
>> + rollback.prependDefer(dev.reAttach)
>> +
>> + rollback.commitAll()
>> +
>> device_flags = get_vm_config_flag(dom, mode='all')
>>
>> with RollbackContext() as rollback:
>
> _______________________________________________
> Kimchi-devel mailing list
> Kimchi-devel at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/kimchi-devel
More information about the Kimchi-devel
mailing list