[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH v3 16/18] spapr_pci_vfio: Enable DDW
From: |
Alexey Kardashevskiy |
Subject: |
Re: [Qemu-devel] [RFC PATCH v3 16/18] spapr_pci_vfio: Enable DDW |
Date: |
Thu, 11 Sep 2014 12:55:56 +1000 |
User-agent: |
Mozilla/5.0 (X11; Linux i686 on x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.1.0 |
On 09/11/2014 07:17 AM, Alexander Graf wrote:
>
>
> On 10.09.14 17:00, Alexey Kardashevskiy wrote:
>> On 09/10/2014 11:03 PM, Alexander Graf wrote:
>>>
>>>
>>> On 29.08.14 12:12, Alexey Kardashevskiy wrote:
>>>> This implements DDW for VFIO. Host kernel support is required for this.
>>>>
>>>> After this patch DDW will be enabled on all machines but pseries-2.1.
>>>
>>> I fail to see the code that restricts DDW to pseries-2.1. Can you please
>>> point me to it?
>>
>> Patch "[RFC PATCH v3 13/18] spapr_pci: Enable DDW" which enables DDW on
>> spapr-pci disables it for the current machine by default.
>>
>> Since spapr-pci-vfio inherits from spapr-pci, this property is off for
>> pseries-2.1 as well (I checked).
>
> Ah, I see. The logic is still reversed. Old machine types get compat
> options, new machine types don't. So the default should be "ddw enabled"
> and pseries-2.1 gets a compat field saying "disable ddw".
I lost you here, sorry. "[RFC PATCH v3 13/18] spapr_pci: Enable DDW" once
again:
static void spapr_machine_2_1_class_init(ObjectClass *oc, void *data)
{
MachineClass *mc = MACHINE_CLASS(oc);
+ static GlobalProperty compat_props[] = {
+ {
+ .driver = TYPE_SPAPR_PCI_HOST_BRIDGE,
+ .property = "ddw",
+ .value = stringify(off),
+ },
+ { /* end of list */ }
+ };
[...]
@@ -682,6 +758,7 @@ static Property spapr_phb_properties[] = {
DEFINE_PROP_UINT64("io_win_addr", sPAPRPHBState, io_win_addr, -1),
DEFINE_PROP_UINT64("io_win_size", sPAPRPHBState, io_win_size,
SPAPR_PCI_IO_WIN_SIZE),
+ DEFINE_PROP_BOOL("ddw", sPAPRPHBState, ddw_enabled, true),
DEFINE_PROP_END_OF_LIST(),
};
What is wrong here?
--
Alexey