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