On Tue, 4 Feb 2014, Sander Eikelenboom wrote: > Tuesday, February 4, 2014, 10:55:18 PM, you wrote: > > > Il 04/02/2014 22:32, Michael S. Tsirkin ha scritto: > >> xenfv has no fwcfg and so does not load acpi from QEMU. > >> as such new acpi features don't work. > >> > >> Reported-by: Sander Eikelenboom <li...@eikelenboom.it> > >> Signed-off-by: Michael S. Tsirkin <m...@redhat.com> > >> --- > >> > >> Sander, could you pleas econfirm this works for you? > > Yes this works for me (still on top of the debug patches + pull of the branch > igor mentoined), > but without -global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off: > > No fw cfg. Bailing out. > bsel: 0, bus: pci.0 > bsel: 0, bus: pci.0 > bsel: 0, bus: pci.0 > bsel: 0, bus: pci.0 >
Sander, thanks for testing and reporting the issue in the first place. Just to be clear: does the patch fix PCI passthrough completely or do you still need to pass -global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off? Sorry but I couldn't quite understand your reply. > -- > Sander > > >> Also, Xen really should switch to fw cfg some day ... > > > Yeah, especially because nowadays "-M pc" works with Xen. It would be > > nice if fw_cfg could be enabled even for Xen on all machines except the > > legacy "-M xenfv". > > > Stefano, could you give it a shot now that you'll be soon done with 4.4? > > > Paolo > > >> hw/i386/pc_piix.c | 11 +++++++++++ > >> 1 file changed, 11 insertions(+) > >> > >> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c > >> index a327d71..1acd2b2 100644 > >> --- a/hw/i386/pc_piix.c > >> +++ b/hw/i386/pc_piix.c > >> @@ -793,6 +793,17 @@ static QEMUMachine xenfv_machine = { > >> .max_cpus = HVM_MAX_VCPUS, > >> .default_machine_opts = "accel=xen", > >> .hot_add_cpu = pc_hot_add_cpu, > >> + .compat_props = (GlobalProperty[]) { > >> + /* xenfv has no fwcfg and so does not load acpi from QEMU. > >> + * as such new acpi features don't work. > >> + */ > >> + { > >> + .driver = "PIIX4_PM", > >> + .property = "acpi-pci-hotplug-with-bridge-support", > >> + .value = "off", > >> + }, > >> + { /* end of list */ } > >> + }, > >> }; > >> #endif > >> > >> > > > >