On Thu, May 22, 2014 at 10:57:54AM +0000, Chen, Tiejun wrote: > > -----Original Message----- > > From: qemu-devel-bounces+tiejun.chen=intel....@nongnu.org > > [mailto:qemu-devel-bounces+tiejun.chen=intel....@nongnu.org] On Behalf Of > > Michael S. Tsirkin > > Sent: Thursday, May 22, 2014 3:22 PM > > To: Gerd Hoffmann > > Cc: qemu-devel@nongnu.org; Anthony Liguori > > Subject: Re: [Qemu-devel] [PATCH] xen: make xen-platform a default device > > > > On Thu, May 22, 2014 at 09:20:50AM +0200, Gerd Hoffmann wrote: > > > Patch hooks up the xen platform device to the default device code we > > > have in qemu. Two effects: > > > > > > (1) The device will not be created in case -nodefaults is specified > > > on the command line. > > > (2) Autocreating the device is also turned off in case xen-platform > > > is added manually via -device. > > > > > > With the patch applied you can move the xen-platform device to some > > > other place with a simple 'qemu -device xen-platform,addr=$slot'. > > > > > > Tested-by: Tiejun Chen <tiejun.c...@intel.com> > > Sorry, I'm not sure if this works well as Gerd expect. > > I already reply something online, please take a look at that before apply. > > Thanks > Tiejun
No worries, I'll wait. > > > Signed-off-by: Gerd Hoffmann <kra...@redhat.com> > > > > Applied, thanks! > > > > > --- > > > hw/i386/pc_piix.c | 2 +- > > > include/hw/xen/xen.h | 1 + > > > vl.c | 3 +++ > > > 3 files changed, 5 insertions(+), 1 deletion(-) > > > > > > diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index > > > eaf3e61..f987d03 100644 > > > --- a/hw/i386/pc_piix.c > > > +++ b/hw/i386/pc_piix.c > > > @@ -385,7 +385,7 @@ static void pc_xen_hvm_init(QEMUMachineInitArgs > > *args) > > > pc_init_pci(args); > > > > > > bus = pci_find_primary_bus(); > > > - if (bus != NULL) { > > > + if (bus != NULL && default_xenplatform) { > > > pci_create_simple(bus, -1, "xen-platform"); > > > } > > > } > > > diff --git a/include/hw/xen/xen.h b/include/hw/xen/xen.h index > > > 85fda3d..b350413 100644 > > > --- a/include/hw/xen/xen.h > > > +++ b/include/hw/xen/xen.h > > > @@ -20,6 +20,7 @@ enum xen_mode { > > > > > > extern uint32_t xen_domid; > > > extern enum xen_mode xen_mode; > > > +extern int default_xenplatform; > > > > > > extern bool xen_allowed; > > > > > > diff --git a/vl.c b/vl.c > > > index 709d8cd..673148e 100644 > > > --- a/vl.c > > > +++ b/vl.c > > > @@ -226,6 +226,7 @@ static int default_floppy = 1; static int > > > default_cdrom = 1; static int default_sdcard = 1; static int > > > default_vga = 1; > > > +int default_xenplatform = 1; > > > > > > static struct { > > > const char *driver; > > > @@ -247,6 +248,7 @@ static struct { > > > { .driver = "isa-cirrus-vga", .flag = &default_vga }, > > > { .driver = "vmware-svga", .flag = &default_vga }, > > > { .driver = "qxl-vga", .flag = &default_vga }, > > > + { .driver = "xen-platform", .flag = &default_xenplatform }, > > > }; > > > > > > static QemuOptsList qemu_rtc_opts = { @@ -4101,6 +4103,7 @@ int > > > main(int argc, char **argv, char **envp) > > > default_monitor = 0; > > > default_net = 0; > > > default_vga = 0; > > > + default_xenplatform = 0; > > > } > > > > > > if (is_daemonized()) { > > > -- > > > 1.8.3.1