From: Paolo Bonzini <pbonzini@redhat.com>
To: Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
Gerd Hoffmann <kraxel@redhat.com>
Cc: Paul Durrant <paul.durrant@citrix.com>,
qemu-devel@nongnu.org, Anthony Liguori <aliguori@amazon.com>,
mst@redhat.com
Subject: Re: [Qemu-devel] [PATCH] xen: make xen-platform a default device
Date: Thu, 22 May 2014 14:50:08 +0200 [thread overview]
Message-ID: <537DF280.3090703@redhat.com> (raw)
In-Reply-To: <alpine.DEB.2.02.1405221301100.14596@kaball.uk.xensource.com>
Il 22/05/2014 14:11, Stefano Stabellini ha scritto:
> On Thu, 22 May 2014, 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.chen@intel.com>
>> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
>
> Given that libxl always passes -nodefaults to QEMU, this patch is going
> to effectively disable xen_platform_pci for all Xen users. It is not a
> good idea. With the patch applied a Xen user would have no way to enable
> xen_platform_pci except for passing some magic command line runes via
> device_model_args_hvm.
In fact this code only runs for "-M xenfv". If you use "-M pc", the
xen-platform device has to be added manually. Perhaps it would be
worthwhile to do the opposite, i.e. add the xen-platform device to "-M
pc" if not using -nodefaults.
Paolo
>
>> 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
>>
>>
>
>
next prev parent reply other threads:[~2014-05-22 12:50 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-22 7:20 [Qemu-devel] [PATCH] xen: make xen-platform a default device Gerd Hoffmann
2014-05-22 7:21 ` Michael S. Tsirkin
2014-05-22 10:57 ` Chen, Tiejun
2014-05-22 10:59 ` Michael S. Tsirkin
2014-05-22 12:11 ` Stefano Stabellini
2014-05-22 12:35 ` Michael S. Tsirkin
2014-05-22 12:53 ` Gerd Hoffmann
2014-05-22 14:00 ` Michael S. Tsirkin
2014-05-22 12:45 ` Gerd Hoffmann
2014-05-22 13:49 ` Stefano Stabellini
2014-05-22 12:50 ` Paolo Bonzini [this message]
2014-05-22 13:22 ` Gerd Hoffmann
2014-05-22 13:56 ` Stefano Stabellini
2014-05-23 10:08 ` Paul Durrant
2014-05-23 10:11 ` Stefano Stabellini
2014-05-23 10:18 ` Paul Durrant
2014-05-23 11:36 ` Stefano Stabellini
2014-05-23 11:51 ` Paul Durrant
2014-05-22 13:55 ` Stefano Stabellini
2014-05-22 14:03 ` Paolo Bonzini
-- strict thread matches above, loose matches on Subject: below --
2014-05-23 13:03 Fabio Fantoni
2014-05-23 14:30 ` Stefano Stabellini
2014-05-23 15:02 ` Fabio Fantoni
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=537DF280.3090703@redhat.com \
--to=pbonzini@redhat.com \
--cc=aliguori@amazon.com \
--cc=kraxel@redhat.com \
--cc=mst@redhat.com \
--cc=paul.durrant@citrix.com \
--cc=qemu-devel@nongnu.org \
--cc=stefano.stabellini@eu.citrix.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.