[Kimchi-devel] [PATCH V2] Add vfio driver as default for powerkvm systems.

Jose Ricardo Ziviani joserz at linux.vnet.ibm.com
Wed May 27 16:37:23 UTC 2015



On 27-05-2015 13:33, Aline Manera wrote:
>
>
> On 27/05/2015 13:31, Jose Ricardo Ziviani wrote:
>>
>>
>> On 27-05-2015 13:20, Aline Manera wrote:
>>>
>>>
>>> On 25/05/2015 13:08, Jose Ricardo Ziviani wrote:
>>>>   - ppc hotplug does not work with kvm driver, it must be
>>>>     vfio by default.
>>>>
>>>> Signed-off-by: Jose Ricardo Ziviani <joserz at linux.vnet.ibm.com>
>>>> ---
>>>>   src/kimchi/model/vmhostdevs.py | 6 ++++++
>>>>   1 file changed, 6 insertions(+)
>>>>
>>>> diff --git a/src/kimchi/model/vmhostdevs.py
>>>> b/src/kimchi/model/vmhostdevs.py
>>>> index 964ec49..516d48f 100644
>>>> --- a/src/kimchi/model/vmhostdevs.py
>>>> +++ b/src/kimchi/model/vmhostdevs.py
>>>> @@ -31,6 +31,7 @@ from kimchi.model.utils import get_vm_config_flag
>>>>   from kimchi.model.vms import DOM_STATE_MAP, VMModel
>>>>   from kimchi.rollbackcontext import RollbackContext
>>>>   from kimchi.utils import kimchi_log, run_command
>>>> +import platform
>>>>
>>>>
>>>>   class VMHostDevsModel(object):
>>>> @@ -164,6 +165,11 @@ class VMHostDevsModel(object):
>>>>           driver = ('vfio' if DOM_STATE_MAP[dom.info()[0]] ==
>>>> "shutoff" and
>>>>                     self.caps.kernel_vfio else 'kvm')
>>>>
>>>> +        # on powerkvm systems it must be vfio driver.
>>>> +        distro, _, _ = platform.linux_distribution()
>>>> +        if distro == 'IBM_PowerKVM':
>>>> +            driver = 'vfio'
>>>
>>> What happen if the kernel module for vfio is not loaded?
>>
>> This won't happen because vfio is not a kernel module but a feature
>> built in.
>>
>
> So why do we have a feature test (FeatureTests.kernel_support_vfio) to
> verify it?

Because it's a built in for PowerKVM but a kernel module for other distros.

>
>
>> # grep -i vfio /boot/config-<kernel-version>
>> CONFIG_VFIO_IOMMU_SPAPR_TCE=y
>> CONFIG_VFIO_SPAPR_EEH=y
>> CONFIG_VFIO=y
>> CONFIG_VFIO_PCI=y
>> CONFIG_KVM_VFIO=y
>>
>>
>>>
>>>> +
>>>>           # Attach all PCI devices in the same IOMMU group
>>>>           dev_model = DeviceModel(conn=self.conn)
>>>>           devs_model = DevicesModel(conn=self.conn)
>>>
>>
>

-- 
Jose Ricardo Ziviani
-----------------------------
Software Engineer
Linux Technology Center - IBM




More information about the Kimchi-devel mailing list