Paul Durrant
2013-Jun-14 08:56 UTC
Re: [Qemu-devel] [PATCH] Remove hardcoded xen-platform device initialization
> -----Original Message----- > From: Ian Campbell > Sent: 13 June 2013 18:44 > To: Stefano Stabellini > Cc: Paul Durrant; qemu-devel@nongnu.org; xen-devel@lists.xen.org > Subject: Re: [Xen-devel] [Qemu-devel] [PATCH] Remove hardcoded xen- > platform device initialization > > On Thu, 2013-06-13 at 18:33 +0100, Stefano Stabellini wrote: > > On Thu, 13 Jun 2013, Paul Durrant wrote: > > > The xen-platform device should be initialized by the Xen toolstack by > > > passing the appropriate -device argument on the command line. > > > > > > Signed-off-by: Paul Durrant <paul.durrant@citrix.com> > > > > This patch is problematic because we can''t know for sure the version of > > upstream QEMU that is going to be used with Xen. > > If we apply this patch and QEMU 1.5 is going to be used with Xen 4.2, > > guests won''t be able to use PV drivers. > > Is the right answer a lever to disable, rather than enable, it? >I didn''t want to add yes another xen specific command line argument to QEMU; it feels wrong when there''s already a perfectly good way of specifying an arbitrary device on the command line, but I suppose I could add a xl version argument or somesuch and gate the device creation on xl version >= 4.3.0? Calling out the compatibility of different versions of xl with different versions of QEMU in some document seems like a better way to go though otherwise this sort of issue is probably going to come up again in future. Paul> A workaround for the situation you envisage is to use the > device_model_args config option, not ideal though. > > > > > > > > > > hw/i386/pc_piix.c | 3 --- > > > 1 file changed, 3 deletions(-) > > > > > > diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c > > > index d618570..e25012d 100644 > > > --- a/hw/i386/pc_piix.c > > > +++ b/hw/i386/pc_piix.c > > > @@ -174,9 +174,6 @@ static void pc_init1(MemoryRegion > *system_memory, > > > pc_register_ferr_irq(gsi[13]); > > > > > > pc_vga_init(isa_bus, pci_enabled ? pci_bus : NULL); > > > - if (xen_enabled()) { > > > - pci_create_simple(pci_bus, -1, "xen-platform"); > > > - } > > > > > > /* init basic PC hardware */ > > > pc_basic_device_init(isa_bus, gsi, &rtc_state, &floppy, > xen_enabled()); > > > > > > _______________________________________________ > > Xen-devel mailing list > > Xen-devel@lists.xen.org > > http://lists.xen.org/xen-devel >