qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] pc: piix4_pm: init legacy PCI hotplug when runn


From: Stefano Stabellini
Subject: Re: [Qemu-devel] [PATCH] pc: piix4_pm: init legacy PCI hotplug when running on Xen
Date: Mon, 10 Nov 2014 11:42:03 +0000
User-agent: Alpine 2.02 (DEB 1266 2009-07-14)

On Mon, 10 Nov 2014, Zhang, Yang Z wrote:
> Igor Mammedov wrote on 2014-05-23:
> > if user starts QEMU with "-machine pc,accel=xen", then compat property
> > in xenfv won't work and it would cause error:
> > "Unsupported bus. Bus doesn't have property 'acpi-pcihp-bsel' set"
> > when PCI device is added with -device on QEMU CLI.
> > 
> > In case of Xen instead of using compat property, just use the fact
> > that xen doesn't use QEMU's fw_cfg/acpi tables to switch piix4_pm into
> > legacy PCI hotplug mode when Xen is enabled.
> 
> I am wondering why Xen cannot use new mechanism to do the hotplug.

If I recall correctly the new mechanism is based on fw_cfg, right?
Xen doesn't have fw_cfg and it uses a different set of ACPI table, built
by one additional piece of firmware call "hvmloader" that KVM or QEMU
don't use.


> > Signed-off-by: Igor Mammedov <address@hidden>
> > ---
> >  hw/acpi/piix4.c   |  3 +++
> >  hw/i386/pc_piix.c | 11 -----------
> >  2 files changed, 3 insertions(+), 11 deletions(-)
> > diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c index 227ea30..12542c3
> > 100644 --- a/hw/acpi/piix4.c +++ b/hw/acpi/piix4.c @@ -501,6 +501,9 @@
> > I2CBus *piix4_pm_init(PCIBus *bus, int devfn, uint32_t smb_io_base,
> >      s->irq = sci_irq;
> >      s->smi_irq = smi_irq;
> >      s->kvm_enabled = kvm_enabled;
> > +    if (!fw_cfg) {
> > +        s->use_acpi_pci_hotplug = false;
> > +    }
> > 
> >      qdev_init_nofail(dev);
> > diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index
> > a13e8d6..067ff0c 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c
> > @@ -840,17 +840,6 @@ 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
> 
> 
> Best regards,
> Yang
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]