All of lore.kernel.org
 help / color / mirror / Atom feed
* qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-09-30 19:11 Marcelo Tosatti
  2012-10-01  1:02 ` Amos Kong
  2012-10-01  8:05 ` Jan Kiszka
  0 siblings, 2 replies; 97+ messages in thread
From: Marcelo Tosatti @ 2012-09-30 19:11 UTC (permalink / raw)
  To: kvm; +Cc: Jan Kiszka


Option is deprecated and warning has been in place for one year.

Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>

diff --git a/blockdev.c b/blockdev.c
index 4a5266e..7c83baa 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -432,12 +432,6 @@ DriveInfo *drive_init(QemuOpts *opts, int default_to_scsi)
         return NULL;
     }
 
-    if (qemu_opt_get(opts, "boot") != NULL) {
-        fprintf(stderr, "qemu-kvm: boot=on|off is deprecated and will be "
-                "ignored. Future versions will reject this parameter. Please "
-                "update your scripts.\n");
-    }
-
     on_write_error = BLOCK_ERR_STOP_ENOSPC;
     if ((buf = qemu_opt_get(opts, "werror")) != NULL) {
         if (type != IF_IDE && type != IF_SCSI && type != IF_VIRTIO && type != IF_NONE) {
diff --git a/qemu-config.c b/qemu-config.c
index 3eaee48..eba977e 100644
--- a/qemu-config.c
+++ b/qemu-config.c
@@ -114,10 +114,6 @@ static QemuOptsList qemu_drive_opts = {
             .name = "copy-on-read",
             .type = QEMU_OPT_BOOL,
             .help = "copy read data from backing file into image file",
-        },{
-            .name = "boot",
-            .type = QEMU_OPT_BOOL,
-            .help = "(deprecated, ignored)",
         },
         { /* end of list */ }
     },


^ permalink raw reply related	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-09-30 19:11 qemu-kvm: remove "boot=on|off" drive parameter compatibility Marcelo Tosatti
@ 2012-10-01  1:02 ` Amos Kong
  2012-10-01  8:05 ` Jan Kiszka
  1 sibling, 0 replies; 97+ messages in thread
From: Amos Kong @ 2012-10-01  1:02 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: Jan Kiszka, kvm

----- Original Message -----
> 
> Option is deprecated and warning has been in place for one year.
> 
> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
> 
> diff --git a/blockdev.c b/blockdev.c
> index 4a5266e..7c83baa 100644
> --- a/blockdev.c
> +++ b/blockdev.c
> @@ -432,12 +432,6 @@ DriveInfo *drive_init(QemuOpts *opts, int
> default_to_scsi)
>          return NULL;
>      }
>  
> -    if (qemu_opt_get(opts, "boot") != NULL) {
> -        fprintf(stderr, "qemu-kvm: boot=on|off is deprecated and
> will be "
> -                "ignored. Future versions will reject this
> parameter. Please "
> -                "update your scripts.\n");
> -    }
> -
>      on_write_error = BLOCK_ERR_STOP_ENOSPC;
>      if ((buf = qemu_opt_get(opts, "werror")) != NULL) {
>          if (type != IF_IDE && type != IF_SCSI && type != IF_VIRTIO
>          && type != IF_NONE) {
> diff --git a/qemu-config.c b/qemu-config.c
> index 3eaee48..eba977e 100644
> --- a/qemu-config.c
> +++ b/qemu-config.c
> @@ -114,10 +114,6 @@ static QemuOptsList qemu_drive_opts = {
>              .name = "copy-on-read",
>              .type = QEMU_OPT_BOOL,
>              .help = "copy read data from backing file into image
>              file",
> -        },{
> -            .name = "boot",
> -            .type = QEMU_OPT_BOOL,
> -            .help = "(deprecated, ignored)",
>          },
>          { /* end of list */ }
>      },


Reviewed-by: Amos Kong <akong@redhat.com>

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-09-30 19:11 qemu-kvm: remove "boot=on|off" drive parameter compatibility Marcelo Tosatti
  2012-10-01  1:02 ` Amos Kong
@ 2012-10-01  8:05 ` Jan Kiszka
  2012-10-01  9:31   ` Marcelo Tosatti
  1 sibling, 1 reply; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01  8:05 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: kvm

On 2012-09-30 21:11, Marcelo Tosatti wrote:
> 
> Option is deprecated and warning has been in place for one year.

Do we really care about such cosmetics? What is the big plan for
qemu-kvm now? For 1.3 and then beyond?

Jan

> 
> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
> 
> diff --git a/blockdev.c b/blockdev.c
> index 4a5266e..7c83baa 100644
> --- a/blockdev.c
> +++ b/blockdev.c
> @@ -432,12 +432,6 @@ DriveInfo *drive_init(QemuOpts *opts, int default_to_scsi)
>          return NULL;
>      }
>  
> -    if (qemu_opt_get(opts, "boot") != NULL) {
> -        fprintf(stderr, "qemu-kvm: boot=on|off is deprecated and will be "
> -                "ignored. Future versions will reject this parameter. Please "
> -                "update your scripts.\n");
> -    }
> -
>      on_write_error = BLOCK_ERR_STOP_ENOSPC;
>      if ((buf = qemu_opt_get(opts, "werror")) != NULL) {
>          if (type != IF_IDE && type != IF_SCSI && type != IF_VIRTIO && type != IF_NONE) {
> diff --git a/qemu-config.c b/qemu-config.c
> index 3eaee48..eba977e 100644
> --- a/qemu-config.c
> +++ b/qemu-config.c
> @@ -114,10 +114,6 @@ static QemuOptsList qemu_drive_opts = {
>              .name = "copy-on-read",
>              .type = QEMU_OPT_BOOL,
>              .help = "copy read data from backing file into image file",
> -        },{
> -            .name = "boot",
> -            .type = QEMU_OPT_BOOL,
> -            .help = "(deprecated, ignored)",
>          },
>          { /* end of list */ }
>      },
> 

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01  8:05 ` Jan Kiszka
@ 2012-10-01  9:31   ` Marcelo Tosatti
  2012-10-01 10:21     ` Jan Kiszka
  0 siblings, 1 reply; 97+ messages in thread
From: Marcelo Tosatti @ 2012-10-01  9:31 UTC (permalink / raw)
  To: Jan Kiszka; +Cc: kvm

On Mon, Oct 01, 2012 at 10:05:21AM +0200, Jan Kiszka wrote:
> On 2012-09-30 21:11, Marcelo Tosatti wrote:
> > 
> > Option is deprecated and warning has been in place for one year.
> 
> Do we really care about such cosmetics? 

We care about removing qemu-kvm to null.

> What is the big plan for
> qemu-kvm now? For 1.3 and then beyond?

I suggested this: provide a configuration file (and proper guide on
how to use it on announce email) to be shipped with qemu 1.3.0.

That is:

"For compatibility with qemu-kvm 1.2.0, use

qemu-system-x86_64 -config /usr/share/qemu/qemu-kvm-1.2-compat.opt"

This would work for rtl8139-as-default, vga-ram-size differences.

And drop all command line option compatibility (which can be easily fixed 
by an administrator/end user).

Comments?


^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01  9:31   ` Marcelo Tosatti
@ 2012-10-01 10:21     ` Jan Kiszka
  2012-10-01 13:03       ` Marcelo Tosatti
  2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
  0 siblings, 2 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 10:21 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: kvm

On 2012-10-01 11:31, Marcelo Tosatti wrote:
> On Mon, Oct 01, 2012 at 10:05:21AM +0200, Jan Kiszka wrote:
>> On 2012-09-30 21:11, Marcelo Tosatti wrote:
>>>
>>> Option is deprecated and warning has been in place for one year.
>>
>> Do we really care about such cosmetics? 
> 
> We care about removing qemu-kvm to null.
> 
>> What is the big plan for
>> qemu-kvm now? For 1.3 and then beyond?
> 
> I suggested this: provide a configuration file (and proper guide on
> how to use it on announce email) to be shipped with qemu 1.3.0.
> 
> That is:
> 
> "For compatibility with qemu-kvm 1.2.0, use
> 
> qemu-system-x86_64 -config /usr/share/qemu/qemu-kvm-1.2-compat.opt"
> 
> This would work for rtl8139-as-default, vga-ram-size differences.
> 
> And drop all command line option compatibility (which can be easily fixed 
> by an administrator/end user).
> 
> Comments?

It's not just about default configs. We need to validate if the
migration formats are truly compatible (qemu-kvm -> QEMU, the other way
around definitely not). For the command line switches, we could provide
a wrapper script that translates them into upstream format or simply
ignores them. That should be harmless to carry upstream.

But I would really stop worrying about the qemu-kvm code base.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 10:21     ` Jan Kiszka
@ 2012-10-01 13:03       ` Marcelo Tosatti
  2012-10-01 13:14         ` Jan Kiszka
  2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
  1 sibling, 1 reply; 97+ messages in thread
From: Marcelo Tosatti @ 2012-10-01 13:03 UTC (permalink / raw)
  To: Jan Kiszka; +Cc: kvm

On Mon, Oct 01, 2012 at 12:21:18PM +0200, Jan Kiszka wrote:
> On 2012-10-01 11:31, Marcelo Tosatti wrote:
> > On Mon, Oct 01, 2012 at 10:05:21AM +0200, Jan Kiszka wrote:
> >> On 2012-09-30 21:11, Marcelo Tosatti wrote:
> >>>
> >>> Option is deprecated and warning has been in place for one year.
> >>
> >> Do we really care about such cosmetics? 
> > 
> > We care about removing qemu-kvm to null.
> > 
> >> What is the big plan for
> >> qemu-kvm now? For 1.3 and then beyond?
> > 
> > I suggested this: provide a configuration file (and proper guide on
> > how to use it on announce email) to be shipped with qemu 1.3.0.
> > 
> > That is:
> > 
> > "For compatibility with qemu-kvm 1.2.0, use
> > 
> > qemu-system-x86_64 -config /usr/share/qemu/qemu-kvm-1.2-compat.opt"
> > 
> > This would work for rtl8139-as-default, vga-ram-size differences.
> > 
> > And drop all command line option compatibility (which can be easily fixed 
> > by an administrator/end user).
> > 
> > Comments?
> 
> It's not just about default configs. We need to validate if the
> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
> around definitely not). 

Right, VGA RAM size differences are part of migration compatibility.

The other two are ACPI and i8254 (will be looking into details soon,
thanks).

> For the command line switches, we could provide
> a wrapper script that translates them into upstream format or simply
> ignores them. That should be harmless to carry upstream.

Do you have an objection against just pushing the responsability to
administrators? It can be seen as configuration file format change.

Most users should not be using direct command line anyway.

> But I would really stop worrying about the qemu-kvm code base.
> 
> Jan

Right, thats what we're trying to do here.


^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:03       ` Marcelo Tosatti
@ 2012-10-01 13:14         ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 13:14 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: kvm

On 2012-10-01 15:03, Marcelo Tosatti wrote:
> On Mon, Oct 01, 2012 at 12:21:18PM +0200, Jan Kiszka wrote:
>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>> On Mon, Oct 01, 2012 at 10:05:21AM +0200, Jan Kiszka wrote:
>>>> On 2012-09-30 21:11, Marcelo Tosatti wrote:
>>>>>
>>>>> Option is deprecated and warning has been in place for one year.
>>>>
>>>> Do we really care about such cosmetics? 
>>>
>>> We care about removing qemu-kvm to null.
>>>
>>>> What is the big plan for
>>>> qemu-kvm now? For 1.3 and then beyond?
>>>
>>> I suggested this: provide a configuration file (and proper guide on
>>> how to use it on announce email) to be shipped with qemu 1.3.0.
>>>
>>> That is:
>>>
>>> "For compatibility with qemu-kvm 1.2.0, use
>>>
>>> qemu-system-x86_64 -config /usr/share/qemu/qemu-kvm-1.2-compat.opt"
>>>
>>> This would work for rtl8139-as-default, vga-ram-size differences.
>>>
>>> And drop all command line option compatibility (which can be easily fixed 
>>> by an administrator/end user).
>>>
>>> Comments?
>>
>> It's not just about default configs. We need to validate if the
>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>> around definitely not). 
> 
> Right, VGA RAM size differences are part of migration compatibility.
> 
> The other two are ACPI and i8254 (will be looking into details soon,
> thanks).
> 
>> For the command line switches, we could provide
>> a wrapper script that translates them into upstream format or simply
>> ignores them. That should be harmless to carry upstream.
> 
> Do you have an objection against just pushing the responsability to
> administrators? It can be seen as configuration file format change.

This is about helping him in the most appropriate way.

> 
> Most users should not be using direct command line anyway.

If you are using the command line, you shouldn't care about qemu-kvm's
legacy. But there might be home-grown management stacks or scripts
around that have to be adjusted. So some wrapper may help in this
process, either as reference or as intermediate adapter.

> 
>> But I would really stop worrying about the qemu-kvm code base.
>>
>> Jan
> 
> Right, thats what we're trying to do here.

Just that I'm missing how this patch correlates with the goal to get
QEMU ready for qemu-kvm users. :)

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 10:21     ` Jan Kiszka
@ 2012-10-01 13:19         ` Anthony Liguori
  2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
  1 sibling, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 13:19 UTC (permalink / raw)
  To: Jan Kiszka, Marcelo Tosatti
  Cc: kvm, qemu-devel, Cole Robinson, Scott Moser, Andreas Färber,
	Michael Tokarev

Jan Kiszka <jan.kiszka@siemens.com> writes:

> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>
> It's not just about default configs. We need to validate if the
> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
> around definitely not). For the command line switches, we could provide
> a wrapper script that translates them into upstream format or simply
> ignores them. That should be harmless to carry upstream.

qemu-kvm has:

 -no-kvm
 -no-kvm-irqchip
 -no-kvm-pit
 -no-kvm-pit-reinjection
 -tdf <- does nothing

There are replacements for all of the above.  If we need to add them to
qemu.git, it's not big deal to add them.

 -drive ...,boot= <- this is ignored

cpu_set command for CPU hotplug which is known broken in qemu-kvm.

testdev which is nice but only used for development

Default nic is rtl8139 vs. e1000.

Some logic to move change the default VGA ram size to 16mb for pc-1.2
(QEMU uses 16mb by default now too).

I think at this point, none of this matters but I added the various
distro maintainers to the thread.

I think it's time for the distros to drop qemu-kvm and just ship
qemu.git.  Is there anything else that needs to happen to make that
switch?

Regards,

Anthony Liguori

>
> But I would really stop worrying about the qemu-kvm code base.
>
> Jan
>
> -- 
> Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
> Corporate Competence Center Embedded Linux
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 13:19         ` Anthony Liguori
  0 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 13:19 UTC (permalink / raw)
  To: Jan Kiszka, Marcelo Tosatti
  Cc: kvm, Scott Moser, Michael Tokarev, qemu-devel, Cole Robinson,
	Andreas Färber

Jan Kiszka <jan.kiszka@siemens.com> writes:

> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>
> It's not just about default configs. We need to validate if the
> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
> around definitely not). For the command line switches, we could provide
> a wrapper script that translates them into upstream format or simply
> ignores them. That should be harmless to carry upstream.

qemu-kvm has:

 -no-kvm
 -no-kvm-irqchip
 -no-kvm-pit
 -no-kvm-pit-reinjection
 -tdf <- does nothing

There are replacements for all of the above.  If we need to add them to
qemu.git, it's not big deal to add them.

 -drive ...,boot= <- this is ignored

cpu_set command for CPU hotplug which is known broken in qemu-kvm.

testdev which is nice but only used for development

Default nic is rtl8139 vs. e1000.

Some logic to move change the default VGA ram size to 16mb for pc-1.2
(QEMU uses 16mb by default now too).

I think at this point, none of this matters but I added the various
distro maintainers to the thread.

I think it's time for the distros to drop qemu-kvm and just ship
qemu.git.  Is there anything else that needs to happen to make that
switch?

Regards,

Anthony Liguori

>
> But I would really stop worrying about the qemu-kvm code base.
>
> Jan
>
> -- 
> Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
> Corporate Competence Center Embedded Linux
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
@ 2012-10-01 13:26           ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 13:26 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: Marcelo Tosatti, kvm, qemu-devel, Cole Robinson, Scott Moser,
	Andreas Färber, Michael Tokarev

On 2012-10-01 15:19, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>
>> It's not just about default configs. We need to validate if the
>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>> around definitely not). For the command line switches, we could provide
>> a wrapper script that translates them into upstream format or simply
>> ignores them. That should be harmless to carry upstream.
> 
> qemu-kvm has:
> 
>  -no-kvm
>  -no-kvm-irqchip
>  -no-kvm-pit
>  -no-kvm-pit-reinjection
>  -tdf <- does nothing
> 
> There are replacements for all of the above.  If we need to add them to
> qemu.git, it's not big deal to add them.

But I don't think we should add them to the source code. This can
perfectly be handled my a (disposable) script layer on top of
qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.

> 
>  -drive ...,boot= <- this is ignored
> 
> cpu_set command for CPU hotplug which is known broken in qemu-kvm.

Right, so nothing is lost when migrating to QEMU.

> 
> testdev which is nice but only used for development
> 
> Default nic is rtl8139 vs. e1000.
> 
> Some logic to move change the default VGA ram size to 16mb for pc-1.2
> (QEMU uses 16mb by default now too).

Also nicely manageable in a wrapper.

> 
> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.

+1

Jan

>  Is there anything else that needs to happen to make that
> switch?
> 
> Regards,
> 
> Anthony Liguori

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 13:26           ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 13:26 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Cole Robinson, Andreas Färber

On 2012-10-01 15:19, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>
>> It's not just about default configs. We need to validate if the
>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>> around definitely not). For the command line switches, we could provide
>> a wrapper script that translates them into upstream format or simply
>> ignores them. That should be harmless to carry upstream.
> 
> qemu-kvm has:
> 
>  -no-kvm
>  -no-kvm-irqchip
>  -no-kvm-pit
>  -no-kvm-pit-reinjection
>  -tdf <- does nothing
> 
> There are replacements for all of the above.  If we need to add them to
> qemu.git, it's not big deal to add them.

But I don't think we should add them to the source code. This can
perfectly be handled my a (disposable) script layer on top of
qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.

> 
>  -drive ...,boot= <- this is ignored
> 
> cpu_set command for CPU hotplug which is known broken in qemu-kvm.

Right, so nothing is lost when migrating to QEMU.

> 
> testdev which is nice but only used for development
> 
> Default nic is rtl8139 vs. e1000.
> 
> Some logic to move change the default VGA ram size to 16mb for pc-1.2
> (QEMU uses 16mb by default now too).

Also nicely manageable in a wrapper.

> 
> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.

+1

Jan

>  Is there anything else that needs to happen to make that
> switch?
> 
> Regards,
> 
> Anthony Liguori

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
@ 2012-10-01 13:31           ` Marcelo Tosatti
  -1 siblings, 0 replies; 97+ messages in thread
From: Marcelo Tosatti @ 2012-10-01 13:31 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Michael Tokarev, qemu-devel,
	Cole Robinson, Andreas Färber

On Mon, Oct 01, 2012 at 08:19:29AM -0500, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
> > On 2012-10-01 11:31, Marcelo Tosatti wrote:
> >
> > It's not just about default configs. We need to validate if the
> > migration formats are truly compatible (qemu-kvm -> QEMU, the other way
> > around definitely not). For the command line switches, we could provide
> > a wrapper script that translates them into upstream format or simply
> > ignores them. That should be harmless to carry upstream.
> 
> qemu-kvm has:
> 
>  -no-kvm
>  -no-kvm-irqchip
>  -no-kvm-pit
>  -no-kvm-pit-reinjection
>  -tdf <- does nothing
> 
> There are replacements for all of the above.  If we need to add them to
> qemu.git, it's not big deal to add them.

At the moment the only purpose of this command line options is for
compability with scripts. My view is that scripts are easily fixed,
so we can just drop them. No need to carry this to QEMU.

>  -drive ...,boot= <- this is ignored
> 
> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> 
> testdev which is nice but only used for development
>
> Default nic is rtl8139 vs. e1000.

Config file (as suggested earlier on this thread).

> Some logic to move change the default VGA ram size to 16mb for pc-1.2
> (QEMU uses 16mb by default now too).

Config file.

> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?
> 
> Regards,
> 
> Anthony Liguori
> 
> >
> > But I would really stop worrying about the qemu-kvm code base.
> >
> > Jan
> >
> > -- 
> > Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
> > Corporate Competence Center Embedded Linux
> > --
> > To unsubscribe from this list: send the line "unsubscribe kvm" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 13:31           ` Marcelo Tosatti
  0 siblings, 0 replies; 97+ messages in thread
From: Marcelo Tosatti @ 2012-10-01 13:31 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Michael Tokarev, qemu-devel,
	Cole Robinson, Andreas Färber

On Mon, Oct 01, 2012 at 08:19:29AM -0500, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
> > On 2012-10-01 11:31, Marcelo Tosatti wrote:
> >
> > It's not just about default configs. We need to validate if the
> > migration formats are truly compatible (qemu-kvm -> QEMU, the other way
> > around definitely not). For the command line switches, we could provide
> > a wrapper script that translates them into upstream format or simply
> > ignores them. That should be harmless to carry upstream.
> 
> qemu-kvm has:
> 
>  -no-kvm
>  -no-kvm-irqchip
>  -no-kvm-pit
>  -no-kvm-pit-reinjection
>  -tdf <- does nothing
> 
> There are replacements for all of the above.  If we need to add them to
> qemu.git, it's not big deal to add them.

At the moment the only purpose of this command line options is for
compability with scripts. My view is that scripts are easily fixed,
so we can just drop them. No need to carry this to QEMU.

>  -drive ...,boot= <- this is ignored
> 
> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> 
> testdev which is nice but only used for development
>
> Default nic is rtl8139 vs. e1000.

Config file (as suggested earlier on this thread).

> Some logic to move change the default VGA ram size to 16mb for pc-1.2
> (QEMU uses 16mb by default now too).

Config file.

> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?
> 
> Regards,
> 
> Anthony Liguori
> 
> >
> > But I would really stop worrying about the qemu-kvm code base.
> >
> > Jan
> >
> > -- 
> > Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
> > Corporate Competence Center Embedded Linux
> > --
> > To unsubscribe from this list: send the line "unsubscribe kvm" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:31           ` [Qemu-devel] " Marcelo Tosatti
@ 2012-10-01 13:36             ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 13:36 UTC (permalink / raw)
  To: Marcelo Tosatti
  Cc: Anthony Liguori, kvm, qemu-devel, Cole Robinson, Scott Moser,
	Andreas Färber, Michael Tokarev

On 2012-10-01 15:31, Marcelo Tosatti wrote:
> On Mon, Oct 01, 2012 at 08:19:29AM -0500, Anthony Liguori wrote:
>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>
>>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>>
>>> It's not just about default configs. We need to validate if the
>>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>>> around definitely not). For the command line switches, we could provide
>>> a wrapper script that translates them into upstream format or simply
>>> ignores them. That should be harmless to carry upstream.
>>
>> qemu-kvm has:
>>
>>  -no-kvm
>>  -no-kvm-irqchip
>>  -no-kvm-pit
>>  -no-kvm-pit-reinjection
>>  -tdf <- does nothing
>>
>> There are replacements for all of the above.  If we need to add them to
>> qemu.git, it's not big deal to add them.
> 
> At the moment the only purpose of this command line options is for
> compability with scripts. My view is that scripts are easily fixed,
> so we can just drop them. No need to carry this to QEMU.
> 
>>  -drive ...,boot= <- this is ignored
>>
>> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
>>
>> testdev which is nice but only used for development
>>
>> Default nic is rtl8139 vs. e1000.
> 
> Config file (as suggested earlier on this thread).

If you need to append -config bla, you can also specify the desired NIC
explicitly - I see no value in the former. If we decide to mangle a
qemu-kvm command line before calling QEMU binaries, we can adjust this
variation there. Otherwise it's the same as with all those -kvm*:
Scripts/management tools will need adjustment.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 13:36             ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 13:36 UTC (permalink / raw)
  To: Marcelo Tosatti
  Cc: kvm, Scott Moser, Michael Tokarev, qemu-devel, Anthony Liguori,
	Cole Robinson, Andreas Färber

On 2012-10-01 15:31, Marcelo Tosatti wrote:
> On Mon, Oct 01, 2012 at 08:19:29AM -0500, Anthony Liguori wrote:
>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>
>>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>>
>>> It's not just about default configs. We need to validate if the
>>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>>> around definitely not). For the command line switches, we could provide
>>> a wrapper script that translates them into upstream format or simply
>>> ignores them. That should be harmless to carry upstream.
>>
>> qemu-kvm has:
>>
>>  -no-kvm
>>  -no-kvm-irqchip
>>  -no-kvm-pit
>>  -no-kvm-pit-reinjection
>>  -tdf <- does nothing
>>
>> There are replacements for all of the above.  If we need to add them to
>> qemu.git, it's not big deal to add them.
> 
> At the moment the only purpose of this command line options is for
> compability with scripts. My view is that scripts are easily fixed,
> so we can just drop them. No need to carry this to QEMU.
> 
>>  -drive ...,boot= <- this is ignored
>>
>> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
>>
>> testdev which is nice but only used for development
>>
>> Default nic is rtl8139 vs. e1000.
> 
> Config file (as suggested earlier on this thread).

If you need to append -config bla, you can also specify the desired NIC
explicitly - I see no value in the former. If we decide to mangle a
qemu-kvm command line before calling QEMU binaries, we can adjust this
variation there. Otherwise it's the same as with all those -kvm*:
Scripts/management tools will need adjustment.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
@ 2012-10-01 13:38           ` Paolo Bonzini
  -1 siblings, 0 replies; 97+ messages in thread
From: Paolo Bonzini @ 2012-10-01 13:38 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: Jan Kiszka, Marcelo Tosatti, kvm, qemu-devel, Cole Robinson,
	Scott Moser, Andreas Färber, Michael Tokarev

Il 01/10/2012 15:19, Anthony Liguori ha scritto:
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?

Perhaps change the default to -machine accel=kvm:tcg?

Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 13:38           ` Paolo Bonzini
  0 siblings, 0 replies; 97+ messages in thread
From: Paolo Bonzini @ 2012-10-01 13:38 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Cole Robinson, Andreas Färber

Il 01/10/2012 15:19, Anthony Liguori ha scritto:
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?

Perhaps change the default to -machine accel=kvm:tcg?

Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:36             ` [Qemu-devel] " Jan Kiszka
@ 2012-10-01 13:44               ` Michael Tokarev
  -1 siblings, 0 replies; 97+ messages in thread
From: Michael Tokarev @ 2012-10-01 13:44 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: Marcelo Tosatti, Anthony Liguori, kvm, qemu-devel, Cole Robinson,
	Scott Moser, Andreas Färber

01.10.2012 17:36, Jan Kiszka wrote:
> On 2012-10-01 15:31, Marcelo Tosatti wrote:

>>> Default nic is rtl8139 vs. e1000.
>>
>> Config file (as suggested earlier on this thread).
> 
> If you need to append -config bla, you can also specify the desired NIC
> explicitly - I see no value in the former. If we decide to mangle a
> qemu-kvm command line before calling QEMU binaries, we can adjust this
> variation there. Otherwise it's the same as with all those -kvm*:
> Scripts/management tools will need adjustment.

I don't think there's a need to "manage" this rtl8139 at
all at this level. Let's declare that "qemu-kvm 1.3+" will
switch from rtl8139 to e1000 by default as a more suitable
in modern world, -- the same way as qemu did the switch
earlier, and be done with that.  I think.

Note that this is JUST for "-net nic" users, which should
be the minority (proper usage is -device rtl8139 or -device
e1000, with explicit model).

Thanks,

/mjt

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 13:44               ` Michael Tokarev
  0 siblings, 0 replies; 97+ messages in thread
From: Michael Tokarev @ 2012-10-01 13:44 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: kvm, Scott Moser, Marcelo Tosatti, qemu-devel, Anthony Liguori,
	Cole Robinson, Andreas Färber

01.10.2012 17:36, Jan Kiszka wrote:
> On 2012-10-01 15:31, Marcelo Tosatti wrote:

>>> Default nic is rtl8139 vs. e1000.
>>
>> Config file (as suggested earlier on this thread).
> 
> If you need to append -config bla, you can also specify the desired NIC
> explicitly - I see no value in the former. If we decide to mangle a
> qemu-kvm command line before calling QEMU binaries, we can adjust this
> variation there. Otherwise it's the same as with all those -kvm*:
> Scripts/management tools will need adjustment.

I don't think there's a need to "manage" this rtl8139 at
all at this level. Let's declare that "qemu-kvm 1.3+" will
switch from rtl8139 to e1000 by default as a more suitable
in modern world, -- the same way as qemu did the switch
earlier, and be done with that.  I think.

Note that this is JUST for "-net nic" users, which should
be the minority (proper usage is -device rtl8139 or -device
e1000, with explicit model).

Thanks,

/mjt

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:38           ` [Qemu-devel] " Paolo Bonzini
@ 2012-10-01 13:46             ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 13:46 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Anthony Liguori, Cole Robinson, Andreas Färber

On 2012-10-01 15:38, Paolo Bonzini wrote:
> Il 01/10/2012 15:19, Anthony Liguori ha scritto:
>> I think it's time for the distros to drop qemu-kvm and just ship
>> qemu.git.  Is there anything else that needs to happen to make that
>> switch?
> 
> Perhaps change the default to -machine accel=kvm:tcg?

That's the old discussion again: This way we generate that "silent
failure" (unless you monitor the console output), where users will
complain that "QEMU is so slow" because something is blocking KVM. Maybe
the risk for the latter is lower these days as modules are auto-loaded
now, don't know.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 13:46             ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 13:46 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Anthony Liguori, Cole Robinson, Andreas Färber

On 2012-10-01 15:38, Paolo Bonzini wrote:
> Il 01/10/2012 15:19, Anthony Liguori ha scritto:
>> I think it's time for the distros to drop qemu-kvm and just ship
>> qemu.git.  Is there anything else that needs to happen to make that
>> switch?
> 
> Perhaps change the default to -machine accel=kvm:tcg?

That's the old discussion again: This way we generate that "silent
failure" (unless you monitor the console output), where users will
complain that "QEMU is so slow" because something is blocking KVM. Maybe
the risk for the latter is lower these days as modules are auto-loaded
now, don't know.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:44               ` [Qemu-devel] " Michael Tokarev
@ 2012-10-01 13:48                 ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 13:48 UTC (permalink / raw)
  To: Michael Tokarev
  Cc: Marcelo Tosatti, Anthony Liguori, kvm, qemu-devel, Cole Robinson,
	Scott Moser, Andreas Färber

On 2012-10-01 15:44, Michael Tokarev wrote:
> 01.10.2012 17:36, Jan Kiszka wrote:
>> On 2012-10-01 15:31, Marcelo Tosatti wrote:
> 
>>>> Default nic is rtl8139 vs. e1000.
>>>
>>> Config file (as suggested earlier on this thread).
>>
>> If you need to append -config bla, you can also specify the desired NIC
>> explicitly - I see no value in the former. If we decide to mangle a
>> qemu-kvm command line before calling QEMU binaries, we can adjust this
>> variation there. Otherwise it's the same as with all those -kvm*:
>> Scripts/management tools will need adjustment.
> 
> I don't think there's a need to "manage" this rtl8139 at
> all at this level. Let's declare that "qemu-kvm 1.3+" will
> switch from rtl8139 to e1000 by default as a more suitable
> in modern world, -- the same way as qemu did the switch
> earlier, and be done with that.  I think.
> 
> Note that this is JUST for "-net nic" users, which should
> be the minority (proper usage is -device rtl8139 or -device
> e1000, with explicit model).

Well, the alternative to config files or wrapper scripts is just a
detailed checklist "how to migrate from qemu-kvm to QEMU".

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 13:48                 ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 13:48 UTC (permalink / raw)
  To: Michael Tokarev
  Cc: kvm, Scott Moser, Marcelo Tosatti, qemu-devel, Anthony Liguori,
	Cole Robinson, Andreas Färber

On 2012-10-01 15:44, Michael Tokarev wrote:
> 01.10.2012 17:36, Jan Kiszka wrote:
>> On 2012-10-01 15:31, Marcelo Tosatti wrote:
> 
>>>> Default nic is rtl8139 vs. e1000.
>>>
>>> Config file (as suggested earlier on this thread).
>>
>> If you need to append -config bla, you can also specify the desired NIC
>> explicitly - I see no value in the former. If we decide to mangle a
>> qemu-kvm command line before calling QEMU binaries, we can adjust this
>> variation there. Otherwise it's the same as with all those -kvm*:
>> Scripts/management tools will need adjustment.
> 
> I don't think there's a need to "manage" this rtl8139 at
> all at this level. Let's declare that "qemu-kvm 1.3+" will
> switch from rtl8139 to e1000 by default as a more suitable
> in modern world, -- the same way as qemu did the switch
> earlier, and be done with that.  I think.
> 
> Note that this is JUST for "-net nic" users, which should
> be the minority (proper usage is -device rtl8139 or -device
> e1000, with explicit model).

Well, the alternative to config files or wrapper scripts is just a
detailed checklist "how to migrate from qemu-kvm to QEMU".

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:38           ` [Qemu-devel] " Paolo Bonzini
@ 2012-10-01 14:04             ` Anthony Liguori
  -1 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 14:04 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Jan Kiszka, Marcelo Tosatti, kvm, qemu-devel, Cole Robinson,
	Scott Moser, Andreas Färber, Michael Tokarev

Paolo Bonzini <pbonzini@redhat.com> writes:

> Il 01/10/2012 15:19, Anthony Liguori ha scritto:
>> I think it's time for the distros to drop qemu-kvm and just ship
>> qemu.git.  Is there anything else that needs to happen to make that
>> switch?
>
> Perhaps change the default to -machine accel=kvm:tcg?
>
> Paolo

I would be in favor of:

#if defined(CONFIG_KVM)
accel=kvm
#else
accel=tcg
#endif

If KVM is available for your target, you almost certainly want to use
it.

I'd be very happy with that change for 1.3.

Regards,

Anthony Liguori

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 14:04             ` Anthony Liguori
  0 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 14:04 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Cole Robinson, Andreas Färber

Paolo Bonzini <pbonzini@redhat.com> writes:

> Il 01/10/2012 15:19, Anthony Liguori ha scritto:
>> I think it's time for the distros to drop qemu-kvm and just ship
>> qemu.git.  Is there anything else that needs to happen to make that
>> switch?
>
> Perhaps change the default to -machine accel=kvm:tcg?
>
> Paolo

I would be in favor of:

#if defined(CONFIG_KVM)
accel=kvm
#else
accel=tcg
#endif

If KVM is available for your target, you almost certainly want to use
it.

I'd be very happy with that change for 1.3.

Regards,

Anthony Liguori

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
@ 2012-10-01 14:07           ` Alexander Graf
  -1 siblings, 0 replies; 97+ messages in thread
From: Alexander Graf @ 2012-10-01 14:07 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Cole Robinson, Andreas Färber


On 01.10.2012, at 15:19, Anthony Liguori wrote:

> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>> 
>> It's not just about default configs. We need to validate if the
>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>> around definitely not). For the command line switches, we could provide
>> a wrapper script that translates them into upstream format or simply
>> ignores them. That should be harmless to carry upstream.
> 
> qemu-kvm has:
> 
> -no-kvm

Should be easy to have around as backwards compat hack. All it needs to do is set accel=tcg.

> -no-kvm-irqchip
> -no-kvm-pit
> -no-kvm-pit-reinjection

Those are quite important, as we need cmdline backwards compatibility.

> -tdf <- does nothing
> 
> There are replacements for all of the above.  If we need to add them to
> qemu.git, it's not big deal to add them.
> 
> -drive ...,boot= <- this is ignored

It's ignored, but useful for certain things. I don't know how many of our users use boot= today, but it's certainly still in the code, and supported. I honestly wouldn't mind to carry a SUSE specific patch that implements boot= for now until we can deem it deprecated enough that we can drop it.

> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> 
> testdev which is nice but only used for development
> 
> Default nic is rtl8139 vs. e1000.

Couldn't we have a machine option that tells us that -M pc-1.2 is really -M pc-kvm-1.2? That way we could implement the device difference, right?


Alex

> 
> Some logic to move change the default VGA ram size to 16mb for pc-1.2
> (QEMU uses 16mb by default now too).
> 
> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?
> 
> Regards,
> 
> Anthony Liguori
> 
>> 
>> But I would really stop worrying about the qemu-kvm code base.
>> 
>> Jan
>> 
>> -- 
>> Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
>> Corporate Competence Center Embedded Linux
>> --
>> To unsubscribe from this list: send the line "unsubscribe kvm" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 14:07           ` Alexander Graf
  0 siblings, 0 replies; 97+ messages in thread
From: Alexander Graf @ 2012-10-01 14:07 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Cole Robinson, Andreas Färber


On 01.10.2012, at 15:19, Anthony Liguori wrote:

> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>> 
>> It's not just about default configs. We need to validate if the
>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>> around definitely not). For the command line switches, we could provide
>> a wrapper script that translates them into upstream format or simply
>> ignores them. That should be harmless to carry upstream.
> 
> qemu-kvm has:
> 
> -no-kvm

Should be easy to have around as backwards compat hack. All it needs to do is set accel=tcg.

> -no-kvm-irqchip
> -no-kvm-pit
> -no-kvm-pit-reinjection

Those are quite important, as we need cmdline backwards compatibility.

> -tdf <- does nothing
> 
> There are replacements for all of the above.  If we need to add them to
> qemu.git, it's not big deal to add them.
> 
> -drive ...,boot= <- this is ignored

It's ignored, but useful for certain things. I don't know how many of our users use boot= today, but it's certainly still in the code, and supported. I honestly wouldn't mind to carry a SUSE specific patch that implements boot= for now until we can deem it deprecated enough that we can drop it.

> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> 
> testdev which is nice but only used for development
> 
> Default nic is rtl8139 vs. e1000.

Couldn't we have a machine option that tells us that -M pc-1.2 is really -M pc-kvm-1.2? That way we could implement the device difference, right?


Alex

> 
> Some logic to move change the default VGA ram size to 16mb for pc-1.2
> (QEMU uses 16mb by default now too).
> 
> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?
> 
> Regards,
> 
> Anthony Liguori
> 
>> 
>> But I would really stop worrying about the qemu-kvm code base.
>> 
>> Jan
>> 
>> -- 
>> Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
>> Corporate Competence Center Embedded Linux
>> --
>> To unsubscribe from this list: send the line "unsubscribe kvm" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 14:07           ` [Qemu-devel] " Alexander Graf
@ 2012-10-01 14:20             ` Paolo Bonzini
  -1 siblings, 0 replies; 97+ messages in thread
From: Paolo Bonzini @ 2012-10-01 14:20 UTC (permalink / raw)
  To: Alexander Graf
  Cc: Anthony Liguori, kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Cole Robinson, Andreas Färber

Il 01/10/2012 16:07, Alexander Graf ha scritto:
>>> -drive ...,boot= <- this is ignored
> 
> It's ignored, but useful for certain things. I don't know how many of
> our users use boot= today, but it's certainly still in the code, and
> supported. I honestly wouldn't mind to carry a SUSE specific patch
> that implements boot= for now until we can deem it deprecated enough
> that we can drop it.

Extboot is not going to be backported to QEMU, but SeaBIOS can now boot
from all emulated device models except MegaSAS.  So we may at most have
just the option, for example making it an alias for bootindex=1 on the
corresponding device.

Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 14:20             ` Paolo Bonzini
  0 siblings, 0 replies; 97+ messages in thread
From: Paolo Bonzini @ 2012-10-01 14:20 UTC (permalink / raw)
  To: Alexander Graf
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Anthony Liguori, Cole Robinson, Andreas Färber

Il 01/10/2012 16:07, Alexander Graf ha scritto:
>>> -drive ...,boot= <- this is ignored
> 
> It's ignored, but useful for certain things. I don't know how many of
> our users use boot= today, but it's certainly still in the code, and
> supported. I honestly wouldn't mind to carry a SUSE specific patch
> that implements boot= for now until we can deem it deprecated enough
> that we can drop it.

Extboot is not going to be backported to QEMU, but SeaBIOS can now boot
from all emulated device models except MegaSAS.  So we may at most have
just the option, for example making it an alias for bootindex=1 on the
corresponding device.

Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 14:04             ` [Qemu-devel] " Anthony Liguori
@ 2012-10-01 14:34               ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 14:34 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Avi Kivity, Cole Robinson, Paolo Bonzini, Andreas Färber

If we built a target for a host that supports KVM in principle, set the
default accelerator to KVM as well. This also means the start of QEMU
will fail to start if KVM support turns out to be unavailable at
runtime.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 kvm-all.c  |    1 +
 kvm-stub.c |    1 +
 kvm.h      |    1 +
 vl.c       |    4 ++--
 4 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/kvm-all.c b/kvm-all.c
index 92a7137..4d5f86c 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -103,6 +103,7 @@ struct KVMState
 #endif
 };
 
+bool kvm_configured = true;
 KVMState *kvm_state;
 bool kvm_kernel_irqchip;
 bool kvm_async_interrupts_allowed;
diff --git a/kvm-stub.c b/kvm-stub.c
index 3c52eb5..86a6451 100644
--- a/kvm-stub.c
+++ b/kvm-stub.c
@@ -17,6 +17,7 @@
 #include "gdbstub.h"
 #include "kvm.h"
 
+bool kvm_configured;
 KVMState *kvm_state;
 bool kvm_kernel_irqchip;
 bool kvm_async_interrupts_allowed;
diff --git a/kvm.h b/kvm.h
index dea2998..9936e5f 100644
--- a/kvm.h
+++ b/kvm.h
@@ -22,6 +22,7 @@
 #include <linux/kvm.h>
 #endif
 
+extern bool kvm_configured;
 extern int kvm_allowed;
 extern bool kvm_kernel_irqchip;
 extern bool kvm_async_interrupts_allowed;
diff --git a/vl.c b/vl.c
index 8d305ca..f557bd1 100644
--- a/vl.c
+++ b/vl.c
@@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
     }
 
     if (p == NULL) {
-        /* Use the default "accelerator", tcg */
-        p = "tcg";
+        /* The default accelerator depends on the availability of KVM. */
+        p = kvm_configured ? "kvm" : "tcg";
     }
 
     while (!accel_initialised && *p != '\0') {
-- 
1.7.3.4

^ permalink raw reply related	[flat|nested] 97+ messages in thread

* [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-01 14:34               ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-01 14:34 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Avi Kivity, Cole Robinson, Paolo Bonzini, Andreas Färber

If we built a target for a host that supports KVM in principle, set the
default accelerator to KVM as well. This also means the start of QEMU
will fail to start if KVM support turns out to be unavailable at
runtime.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 kvm-all.c  |    1 +
 kvm-stub.c |    1 +
 kvm.h      |    1 +
 vl.c       |    4 ++--
 4 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/kvm-all.c b/kvm-all.c
index 92a7137..4d5f86c 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -103,6 +103,7 @@ struct KVMState
 #endif
 };
 
+bool kvm_configured = true;
 KVMState *kvm_state;
 bool kvm_kernel_irqchip;
 bool kvm_async_interrupts_allowed;
diff --git a/kvm-stub.c b/kvm-stub.c
index 3c52eb5..86a6451 100644
--- a/kvm-stub.c
+++ b/kvm-stub.c
@@ -17,6 +17,7 @@
 #include "gdbstub.h"
 #include "kvm.h"
 
+bool kvm_configured;
 KVMState *kvm_state;
 bool kvm_kernel_irqchip;
 bool kvm_async_interrupts_allowed;
diff --git a/kvm.h b/kvm.h
index dea2998..9936e5f 100644
--- a/kvm.h
+++ b/kvm.h
@@ -22,6 +22,7 @@
 #include <linux/kvm.h>
 #endif
 
+extern bool kvm_configured;
 extern int kvm_allowed;
 extern bool kvm_kernel_irqchip;
 extern bool kvm_async_interrupts_allowed;
diff --git a/vl.c b/vl.c
index 8d305ca..f557bd1 100644
--- a/vl.c
+++ b/vl.c
@@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
     }
 
     if (p == NULL) {
-        /* Use the default "accelerator", tcg */
-        p = "tcg";
+        /* The default accelerator depends on the availability of KVM. */
+        p = kvm_configured ? "kvm" : "tcg";
     }
 
     while (!accel_initialised && *p != '\0') {
-- 
1.7.3.4

^ permalink raw reply related	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
@ 2012-10-01 15:39           ` Bruce Rogers
  -1 siblings, 0 replies; 97+ messages in thread
From: Bruce Rogers @ 2012-10-01 15:39 UTC (permalink / raw)
  To: Anthony Liguori, Marcelo Tosatti, Jan Kiszka
  Cc: qemu-devel, Cole Robinson, afaerber, Michael Tokarev, Scott Moser, kvm

 >>> On 10/1/2012 at 07:19 AM, Anthony Liguori <anthony@codemonkey.ws> wrote: 
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>
>> It's not just about default configs. We need to validate if the
>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>> around definitely not). For the command line switches, we could provide
>> a wrapper script that translates them into upstream format or simply
>> ignores them. That should be harmless to carry upstream.
> 
> qemu-kvm has:
> 
>  -no-kvm
>  -no-kvm-irqchip
>  -no-kvm-pit
>  -no-kvm-pit-reinjection
>  -tdf <- does nothing
> 
> There are replacements for all of the above.  If we need to add them to
> qemu.git, it's not big deal to add them.
> 
>  -drive ...,boot= <- this is ignored
> 
> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> 
> testdev which is nice but only used for development
> 
> Default nic is rtl8139 vs. e1000.
> 
> Some logic to move change the default VGA ram size to 16mb for pc-1.2
> (QEMU uses 16mb by default now too).
> 
> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?

We are seriously considering moving to qemu.git for our SP3 release of
SUSE SLES 11. There are just a handful of patches that provide the backwards
compatibility we need to maintain (default to kvm, default nic model,
vga ram size), so assuming there is a 100% commitment to fully supporting
kvm in qemu going forward (which I don't doubt) I think this is a good time
for us to make that switch.

Bruce


^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-01 15:39           ` Bruce Rogers
  0 siblings, 0 replies; 97+ messages in thread
From: Bruce Rogers @ 2012-10-01 15:39 UTC (permalink / raw)
  To: Anthony Liguori, Marcelo Tosatti, Jan Kiszka
  Cc: kvm, Scott Moser, Michael Tokarev, qemu-devel, Cole Robinson, afaerber

 >>> On 10/1/2012 at 07:19 AM, Anthony Liguori <anthony@codemonkey.ws> wrote: 
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>
>> It's not just about default configs. We need to validate if the
>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>> around definitely not). For the command line switches, we could provide
>> a wrapper script that translates them into upstream format or simply
>> ignores them. That should be harmless to carry upstream.
> 
> qemu-kvm has:
> 
>  -no-kvm
>  -no-kvm-irqchip
>  -no-kvm-pit
>  -no-kvm-pit-reinjection
>  -tdf <- does nothing
> 
> There are replacements for all of the above.  If we need to add them to
> qemu.git, it's not big deal to add them.
> 
>  -drive ...,boot= <- this is ignored
> 
> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> 
> testdev which is nice but only used for development
> 
> Default nic is rtl8139 vs. e1000.
> 
> Some logic to move change the default VGA ram size to 16mb for pc-1.2
> (QEMU uses 16mb by default now too).
> 
> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?

We are seriously considering moving to qemu.git for our SP3 release of
SUSE SLES 11. There are just a handful of patches that provide the backwards
compatibility we need to maintain (default to kvm, default nic model,
vga ram size), so assuming there is a 100% commitment to fully supporting
kvm in qemu going forward (which I don't doubt) I think this is a good time
for us to make that switch.

Bruce

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 14:34               ` [Qemu-devel] " Jan Kiszka
@ 2012-10-01 16:20                 ` Anthony Liguori
  -1 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 16:20 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: Paolo Bonzini, Marcelo Tosatti, kvm, qemu-devel, Cole Robinson,
	Scott Moser, Andreas Färber, Michael Tokarev, qemu-devel,
	Avi Kivity, Blue Swirl, Aurelien Jarno

Jan Kiszka <jan.kiszka@siemens.com> writes:

> If we built a target for a host that supports KVM in principle, set the
> default accelerator to KVM as well. This also means the start of QEMU
> will fail to start if KVM support turns out to be unavailable at
> runtime.
>
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>  kvm-all.c  |    1 +
>  kvm-stub.c |    1 +
>  kvm.h      |    1 +
>  vl.c       |    4 ++--
>  4 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/kvm-all.c b/kvm-all.c
> index 92a7137..4d5f86c 100644
> --- a/kvm-all.c
> +++ b/kvm-all.c
> @@ -103,6 +103,7 @@ struct KVMState
>  #endif
>  };
>  
> +bool kvm_configured = true;
>  KVMState *kvm_state;
>  bool kvm_kernel_irqchip;
>  bool kvm_async_interrupts_allowed;
> diff --git a/kvm-stub.c b/kvm-stub.c
> index 3c52eb5..86a6451 100644
> --- a/kvm-stub.c
> +++ b/kvm-stub.c
> @@ -17,6 +17,7 @@
>  #include "gdbstub.h"
>  #include "kvm.h"
>  
> +bool kvm_configured;
>  KVMState *kvm_state;
>  bool kvm_kernel_irqchip;
>  bool kvm_async_interrupts_allowed;
> diff --git a/kvm.h b/kvm.h
> index dea2998..9936e5f 100644
> --- a/kvm.h
> +++ b/kvm.h
> @@ -22,6 +22,7 @@
>  #include <linux/kvm.h>
>  #endif
>  
> +extern bool kvm_configured;
>  extern int kvm_allowed;
>  extern bool kvm_kernel_irqchip;
>  extern bool kvm_async_interrupts_allowed;
> diff --git a/vl.c b/vl.c
> index 8d305ca..f557bd1 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
>      }
>  
>      if (p == NULL) {
> -        /* Use the default "accelerator", tcg */
> -        p = "tcg";
> +        /* The default accelerator depends on the availability of KVM. */
> +        p = kvm_configured ? "kvm" : "tcg";
>      }

How about making this an arch_init() function call and then using a #if
defined(KVM_CONFIG) in arch_init.c?

I hate to introduce another global variable if we can avoid it...

Otherwise:

Acked-by: Anthony Liguori <aliguori@us.ibm.com>

Blue/Aurelien, any objections?

Regards,

Anthony Liguori

>  
>      while (!accel_initialised && *p != '\0') {
> -- 
> 1.7.3.4

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-01 16:20                 ` Anthony Liguori
  0 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 16:20 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Blue Swirl, Avi Kivity, Cole Robinson, Paolo Bonzini,
	Andreas Färber, Aurelien Jarno

Jan Kiszka <jan.kiszka@siemens.com> writes:

> If we built a target for a host that supports KVM in principle, set the
> default accelerator to KVM as well. This also means the start of QEMU
> will fail to start if KVM support turns out to be unavailable at
> runtime.
>
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>  kvm-all.c  |    1 +
>  kvm-stub.c |    1 +
>  kvm.h      |    1 +
>  vl.c       |    4 ++--
>  4 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/kvm-all.c b/kvm-all.c
> index 92a7137..4d5f86c 100644
> --- a/kvm-all.c
> +++ b/kvm-all.c
> @@ -103,6 +103,7 @@ struct KVMState
>  #endif
>  };
>  
> +bool kvm_configured = true;
>  KVMState *kvm_state;
>  bool kvm_kernel_irqchip;
>  bool kvm_async_interrupts_allowed;
> diff --git a/kvm-stub.c b/kvm-stub.c
> index 3c52eb5..86a6451 100644
> --- a/kvm-stub.c
> +++ b/kvm-stub.c
> @@ -17,6 +17,7 @@
>  #include "gdbstub.h"
>  #include "kvm.h"
>  
> +bool kvm_configured;
>  KVMState *kvm_state;
>  bool kvm_kernel_irqchip;
>  bool kvm_async_interrupts_allowed;
> diff --git a/kvm.h b/kvm.h
> index dea2998..9936e5f 100644
> --- a/kvm.h
> +++ b/kvm.h
> @@ -22,6 +22,7 @@
>  #include <linux/kvm.h>
>  #endif
>  
> +extern bool kvm_configured;
>  extern int kvm_allowed;
>  extern bool kvm_kernel_irqchip;
>  extern bool kvm_async_interrupts_allowed;
> diff --git a/vl.c b/vl.c
> index 8d305ca..f557bd1 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
>      }
>  
>      if (p == NULL) {
> -        /* Use the default "accelerator", tcg */
> -        p = "tcg";
> +        /* The default accelerator depends on the availability of KVM. */
> +        p = kvm_configured ? "kvm" : "tcg";
>      }

How about making this an arch_init() function call and then using a #if
defined(KVM_CONFIG) in arch_init.c?

I hate to introduce another global variable if we can avoid it...

Otherwise:

Acked-by: Anthony Liguori <aliguori@us.ibm.com>

Blue/Aurelien, any objections?

Regards,

Anthony Liguori

>  
>      while (!accel_initialised && *p != '\0') {
> -- 
> 1.7.3.4

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 14:34               ` [Qemu-devel] " Jan Kiszka
@ 2012-10-01 16:43                 ` Andreas Färber
  -1 siblings, 0 replies; 97+ messages in thread
From: Andreas Färber @ 2012-10-01 16:43 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: Anthony Liguori, kvm, Scott Moser, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Avi Kivity, Cole Robinson,
	Paolo Bonzini, Bruce Rogers

Hello Jan,

Am 01.10.2012 16:34, schrieb Jan Kiszka:
> If we built a target for a host that supports KVM in principle, set the
> default accelerator to KVM as well. This also means the start of QEMU
> will fail to start if KVM support turns out to be unavailable at
> runtime.

From a distro point of view this of course means that we will build
against KVM and that the new KVM default will start to fail for users on
very old hardware. Can't we do a runtime check to select the default?

Would be nice to at least amend the commit message with how they are
expected to remedy that via command line. -machine accel=tcg?

Regards,
Andreas

> 
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>  kvm-all.c  |    1 +
>  kvm-stub.c |    1 +
>  kvm.h      |    1 +
>  vl.c       |    4 ++--
>  4 files changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/kvm-all.c b/kvm-all.c
> index 92a7137..4d5f86c 100644
> --- a/kvm-all.c
> +++ b/kvm-all.c
> @@ -103,6 +103,7 @@ struct KVMState
>  #endif
>  };
>  
> +bool kvm_configured = true;
>  KVMState *kvm_state;
>  bool kvm_kernel_irqchip;
>  bool kvm_async_interrupts_allowed;
> diff --git a/kvm-stub.c b/kvm-stub.c
> index 3c52eb5..86a6451 100644
> --- a/kvm-stub.c
> +++ b/kvm-stub.c
> @@ -17,6 +17,7 @@
>  #include "gdbstub.h"
>  #include "kvm.h"
>  
> +bool kvm_configured;
>  KVMState *kvm_state;
>  bool kvm_kernel_irqchip;
>  bool kvm_async_interrupts_allowed;
> diff --git a/kvm.h b/kvm.h
> index dea2998..9936e5f 100644
> --- a/kvm.h
> +++ b/kvm.h
> @@ -22,6 +22,7 @@
>  #include <linux/kvm.h>
>  #endif
>  
> +extern bool kvm_configured;
>  extern int kvm_allowed;
>  extern bool kvm_kernel_irqchip;
>  extern bool kvm_async_interrupts_allowed;
> diff --git a/vl.c b/vl.c
> index 8d305ca..f557bd1 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
>      }
>  
>      if (p == NULL) {
> -        /* Use the default "accelerator", tcg */
> -        p = "tcg";
> +        /* The default accelerator depends on the availability of KVM. */
> +        p = kvm_configured ? "kvm" : "tcg";
>      }
>  
>      while (!accel_initialised && *p != '\0') {
> 


-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-01 16:43                 ` Andreas Färber
  0 siblings, 0 replies; 97+ messages in thread
From: Andreas Färber @ 2012-10-01 16:43 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Bruce Rogers, Avi Kivity, Anthony Liguori, Cole Robinson,
	Paolo Bonzini

Hello Jan,

Am 01.10.2012 16:34, schrieb Jan Kiszka:
> If we built a target for a host that supports KVM in principle, set the
> default accelerator to KVM as well. This also means the start of QEMU
> will fail to start if KVM support turns out to be unavailable at
> runtime.

>From a distro point of view this of course means that we will build
against KVM and that the new KVM default will start to fail for users on
very old hardware. Can't we do a runtime check to select the default?

Would be nice to at least amend the commit message with how they are
expected to remedy that via command line. -machine accel=tcg?

Regards,
Andreas

> 
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>  kvm-all.c  |    1 +
>  kvm-stub.c |    1 +
>  kvm.h      |    1 +
>  vl.c       |    4 ++--
>  4 files changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/kvm-all.c b/kvm-all.c
> index 92a7137..4d5f86c 100644
> --- a/kvm-all.c
> +++ b/kvm-all.c
> @@ -103,6 +103,7 @@ struct KVMState
>  #endif
>  };
>  
> +bool kvm_configured = true;
>  KVMState *kvm_state;
>  bool kvm_kernel_irqchip;
>  bool kvm_async_interrupts_allowed;
> diff --git a/kvm-stub.c b/kvm-stub.c
> index 3c52eb5..86a6451 100644
> --- a/kvm-stub.c
> +++ b/kvm-stub.c
> @@ -17,6 +17,7 @@
>  #include "gdbstub.h"
>  #include "kvm.h"
>  
> +bool kvm_configured;
>  KVMState *kvm_state;
>  bool kvm_kernel_irqchip;
>  bool kvm_async_interrupts_allowed;
> diff --git a/kvm.h b/kvm.h
> index dea2998..9936e5f 100644
> --- a/kvm.h
> +++ b/kvm.h
> @@ -22,6 +22,7 @@
>  #include <linux/kvm.h>
>  #endif
>  
> +extern bool kvm_configured;
>  extern int kvm_allowed;
>  extern bool kvm_kernel_irqchip;
>  extern bool kvm_async_interrupts_allowed;
> diff --git a/vl.c b/vl.c
> index 8d305ca..f557bd1 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
>      }
>  
>      if (p == NULL) {
> -        /* Use the default "accelerator", tcg */
> -        p = "tcg";
> +        /* The default accelerator depends on the availability of KVM. */
> +        p = kvm_configured ? "kvm" : "tcg";
>      }
>  
>      while (!accel_initialised && *p != '\0') {
> 


-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 16:43                 ` Andreas Färber
@ 2012-10-01 16:47                   ` Daniel P. Berrange
  -1 siblings, 0 replies; 97+ messages in thread
From: Daniel P. Berrange @ 2012-10-01 16:47 UTC (permalink / raw)
  To: Andreas Färber
  Cc: Jan Kiszka, kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Anthony Liguori,
	Cole Robinson, Paolo Bonzini

On Mon, Oct 01, 2012 at 06:43:00PM +0200, Andreas Färber wrote:
> Hello Jan,
> 
> Am 01.10.2012 16:34, schrieb Jan Kiszka:
> > If we built a target for a host that supports KVM in principle, set the
> > default accelerator to KVM as well. This also means the start of QEMU
> > will fail to start if KVM support turns out to be unavailable at
> > runtime.
> 
> From a distro point of view this of course means that we will build
> against KVM and that the new KVM default will start to fail for users on
> very old hardware. Can't we do a runtime check to select the default?

NB, this is *not* only about old hardware. There are plenty of users who
use QEMU inside VMs. One very common usage I know of is image building
tools which are run inside Amazon VMs, using libguestfs & QEMU.

IMHO, default to KVM, fallback to TCG is the most friendly default
behaviour.

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-01 16:47                   ` Daniel P. Berrange
  0 siblings, 0 replies; 97+ messages in thread
From: Daniel P. Berrange @ 2012-10-01 16:47 UTC (permalink / raw)
  To: Andreas Färber
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Anthony Liguori,
	Cole Robinson, Paolo Bonzini

On Mon, Oct 01, 2012 at 06:43:00PM +0200, Andreas Färber wrote:
> Hello Jan,
> 
> Am 01.10.2012 16:34, schrieb Jan Kiszka:
> > If we built a target for a host that supports KVM in principle, set the
> > default accelerator to KVM as well. This also means the start of QEMU
> > will fail to start if KVM support turns out to be unavailable at
> > runtime.
> 
> From a distro point of view this of course means that we will build
> against KVM and that the new KVM default will start to fail for users on
> very old hardware. Can't we do a runtime check to select the default?

NB, this is *not* only about old hardware. There are plenty of users who
use QEMU inside VMs. One very common usage I know of is image building
tools which are run inside Amazon VMs, using libguestfs & QEMU.

IMHO, default to KVM, fallback to TCG is the most friendly default
behaviour.

Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 16:20                 ` [Qemu-devel] " Anthony Liguori
@ 2012-10-01 16:56                   ` Aurelien Jarno
  -1 siblings, 0 replies; 97+ messages in thread
From: Aurelien Jarno @ 2012-10-01 16:56 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Blue Swirl, Avi Kivity, Cole Robinson, Paolo Bonzini,
	Andreas Färber

On Mon, Oct 01, 2012 at 11:20:41AM -0500, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
> > If we built a target for a host that supports KVM in principle, set the
> > default accelerator to KVM as well. This also means the start of QEMU
> > will fail to start if KVM support turns out to be unavailable at
> > runtime.
> >
> > Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> > ---
> >  kvm-all.c  |    1 +
> >  kvm-stub.c |    1 +
> >  kvm.h      |    1 +
> >  vl.c       |    4 ++--
> >  4 files changed, 5 insertions(+), 2 deletions(-)
> >
> > diff --git a/kvm-all.c b/kvm-all.c
> > index 92a7137..4d5f86c 100644
> > --- a/kvm-all.c
> > +++ b/kvm-all.c
> > @@ -103,6 +103,7 @@ struct KVMState
> >  #endif
> >  };
> >  
> > +bool kvm_configured = true;
> >  KVMState *kvm_state;
> >  bool kvm_kernel_irqchip;
> >  bool kvm_async_interrupts_allowed;
> > diff --git a/kvm-stub.c b/kvm-stub.c
> > index 3c52eb5..86a6451 100644
> > --- a/kvm-stub.c
> > +++ b/kvm-stub.c
> > @@ -17,6 +17,7 @@
> >  #include "gdbstub.h"
> >  #include "kvm.h"
> >  
> > +bool kvm_configured;
> >  KVMState *kvm_state;
> >  bool kvm_kernel_irqchip;
> >  bool kvm_async_interrupts_allowed;
> > diff --git a/kvm.h b/kvm.h
> > index dea2998..9936e5f 100644
> > --- a/kvm.h
> > +++ b/kvm.h
> > @@ -22,6 +22,7 @@
> >  #include <linux/kvm.h>
> >  #endif
> >  
> > +extern bool kvm_configured;
> >  extern int kvm_allowed;
> >  extern bool kvm_kernel_irqchip;
> >  extern bool kvm_async_interrupts_allowed;
> > diff --git a/vl.c b/vl.c
> > index 8d305ca..f557bd1 100644
> > --- a/vl.c
> > +++ b/vl.c
> > @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
> >      }
> >  
> >      if (p == NULL) {
> > -        /* Use the default "accelerator", tcg */
> > -        p = "tcg";
> > +        /* The default accelerator depends on the availability of KVM. */
> > +        p = kvm_configured ? "kvm" : "tcg";
> >      }
> 
> How about making this an arch_init() function call and then using a #if
> defined(KVM_CONFIG) in arch_init.c?
> 
> I hate to introduce another global variable if we can avoid it...
> 
> Otherwise:
> 
> Acked-by: Anthony Liguori <aliguori@us.ibm.com>
> 
> Blue/Aurelien, any objections?
> 

I am not sure this way of doing is really distribution friendly, where
the QEMU package is built for a large variety of hosts, some of them
maybe without KVM support.

I am all for enabling KVM by default, but I think it should fall back to
TCG if it is not enabled (probably with a warning so that the user is
aware of that). On the other hand, if the user explicitly enables KVM
support with -enable-kvm or with accel=kvm, it should fail to start. In 
other words, a bit like the configure script options, by default we 
use auto-detection, but if an option is explicitly enabled, it fails if
it can't be enabled.

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-01 16:56                   ` Aurelien Jarno
  0 siblings, 0 replies; 97+ messages in thread
From: Aurelien Jarno @ 2012-10-01 16:56 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Blue Swirl, Avi Kivity, Cole Robinson, Paolo Bonzini,
	Andreas Färber

On Mon, Oct 01, 2012 at 11:20:41AM -0500, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
> > If we built a target for a host that supports KVM in principle, set the
> > default accelerator to KVM as well. This also means the start of QEMU
> > will fail to start if KVM support turns out to be unavailable at
> > runtime.
> >
> > Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> > ---
> >  kvm-all.c  |    1 +
> >  kvm-stub.c |    1 +
> >  kvm.h      |    1 +
> >  vl.c       |    4 ++--
> >  4 files changed, 5 insertions(+), 2 deletions(-)
> >
> > diff --git a/kvm-all.c b/kvm-all.c
> > index 92a7137..4d5f86c 100644
> > --- a/kvm-all.c
> > +++ b/kvm-all.c
> > @@ -103,6 +103,7 @@ struct KVMState
> >  #endif
> >  };
> >  
> > +bool kvm_configured = true;
> >  KVMState *kvm_state;
> >  bool kvm_kernel_irqchip;
> >  bool kvm_async_interrupts_allowed;
> > diff --git a/kvm-stub.c b/kvm-stub.c
> > index 3c52eb5..86a6451 100644
> > --- a/kvm-stub.c
> > +++ b/kvm-stub.c
> > @@ -17,6 +17,7 @@
> >  #include "gdbstub.h"
> >  #include "kvm.h"
> >  
> > +bool kvm_configured;
> >  KVMState *kvm_state;
> >  bool kvm_kernel_irqchip;
> >  bool kvm_async_interrupts_allowed;
> > diff --git a/kvm.h b/kvm.h
> > index dea2998..9936e5f 100644
> > --- a/kvm.h
> > +++ b/kvm.h
> > @@ -22,6 +22,7 @@
> >  #include <linux/kvm.h>
> >  #endif
> >  
> > +extern bool kvm_configured;
> >  extern int kvm_allowed;
> >  extern bool kvm_kernel_irqchip;
> >  extern bool kvm_async_interrupts_allowed;
> > diff --git a/vl.c b/vl.c
> > index 8d305ca..f557bd1 100644
> > --- a/vl.c
> > +++ b/vl.c
> > @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
> >      }
> >  
> >      if (p == NULL) {
> > -        /* Use the default "accelerator", tcg */
> > -        p = "tcg";
> > +        /* The default accelerator depends on the availability of KVM. */
> > +        p = kvm_configured ? "kvm" : "tcg";
> >      }
> 
> How about making this an arch_init() function call and then using a #if
> defined(KVM_CONFIG) in arch_init.c?
> 
> I hate to introduce another global variable if we can avoid it...
> 
> Otherwise:
> 
> Acked-by: Anthony Liguori <aliguori@us.ibm.com>
> 
> Blue/Aurelien, any objections?
> 

I am not sure this way of doing is really distribution friendly, where
the QEMU package is built for a large variety of hosts, some of them
maybe without KVM support.

I am all for enabling KVM by default, but I think it should fall back to
TCG if it is not enabled (probably with a warning so that the user is
aware of that). On the other hand, if the user explicitly enables KVM
support with -enable-kvm or with accel=kvm, it should fail to start. In 
other words, a bit like the configure script options, by default we 
use auto-detection, but if an option is explicitly enabled, it fails if
it can't be enabled.

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 16:47                   ` Daniel P. Berrange
@ 2012-10-01 19:03                     ` Anthony Liguori
  -1 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 19:03 UTC (permalink / raw)
  To: Daniel P. Berrange, Andreas Färber
  Cc: Jan Kiszka, kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Cole Robinson,
	Paolo Bonzini

"Daniel P. Berrange" <berrange@redhat.com> writes:

> On Mon, Oct 01, 2012 at 06:43:00PM +0200, Andreas Färber wrote:
>> Hello Jan,
>> 
>> Am 01.10.2012 16:34, schrieb Jan Kiszka:
>> > If we built a target for a host that supports KVM in principle, set the
>> > default accelerator to KVM as well. This also means the start of QEMU
>> > will fail to start if KVM support turns out to be unavailable at
>> > runtime.
>> 
>> From a distro point of view this of course means that we will build
>> against KVM and that the new KVM default will start to fail for users on
>> very old hardware. Can't we do a runtime check to select the default?
>
> NB, this is *not* only about old hardware. There are plenty of users who
> use QEMU inside VMs. One very common usage I know of is image building
> tools which are run inside Amazon VMs, using libguestfs & QEMU.

But libguest can set it's accelerator option to whatever it wants.

If your running QEMU under a VM, it's pretty reasonable to have to use a
special option IMHO.

> IMHO, default to KVM, fallback to TCG is the most friendly default
> behaviour.

Except if a user expects good network performance and can't
understand why they're getting 100kb/s.

Regards,

Anthony Liguori

>
> Daniel
> -- 
> |: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
> |: http://libvirt.org              -o-             http://virt-manager.org :|
> |: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
> |: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-01 19:03                     ` Anthony Liguori
  0 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 19:03 UTC (permalink / raw)
  To: Daniel P. Berrange, Andreas Färber
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Cole Robinson,
	Paolo Bonzini

"Daniel P. Berrange" <berrange@redhat.com> writes:

> On Mon, Oct 01, 2012 at 06:43:00PM +0200, Andreas Färber wrote:
>> Hello Jan,
>> 
>> Am 01.10.2012 16:34, schrieb Jan Kiszka:
>> > If we built a target for a host that supports KVM in principle, set the
>> > default accelerator to KVM as well. This also means the start of QEMU
>> > will fail to start if KVM support turns out to be unavailable at
>> > runtime.
>> 
>> From a distro point of view this of course means that we will build
>> against KVM and that the new KVM default will start to fail for users on
>> very old hardware. Can't we do a runtime check to select the default?
>
> NB, this is *not* only about old hardware. There are plenty of users who
> use QEMU inside VMs. One very common usage I know of is image building
> tools which are run inside Amazon VMs, using libguestfs & QEMU.

But libguest can set it's accelerator option to whatever it wants.

If your running QEMU under a VM, it's pretty reasonable to have to use a
special option IMHO.

> IMHO, default to KVM, fallback to TCG is the most friendly default
> behaviour.

Except if a user expects good network performance and can't
understand why they're getting 100kb/s.

Regards,

Anthony Liguori

>
> Daniel
> -- 
> |: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
> |: http://libvirt.org              -o-             http://virt-manager.org :|
> |: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
> |: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 19:03                     ` Anthony Liguori
@ 2012-10-01 19:25                       ` Paolo Bonzini
  -1 siblings, 0 replies; 97+ messages in thread
From: Paolo Bonzini @ 2012-10-01 19:25 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Cole Robinson,
	Andreas Färber


> But libguest can set it's accelerator option to whatever it wants.
> 
> If your running QEMU under a VM, it's pretty reasonable to have to
> use a special option IMHO.

It's also reasonable to have consecutive releases change defaults in
a more "friendly" way (i.e. from tcg to kvm:tcg), especially since
we'll get users that formerly used qemu-kvm and never had to specify
neither -machine accel nor --enable-kvm.

> > IMHO, default to KVM, fallback to TCG is the most friendly default
> > behaviour.
> 
> Except if a user expects good network performance and can't
> understand why they're getting 100kb/s.

libguestfs doesn't need network at all (though I wonder if they could
use lxc instead...).

Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-01 19:25                       ` Paolo Bonzini
  0 siblings, 0 replies; 97+ messages in thread
From: Paolo Bonzini @ 2012-10-01 19:25 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Cole Robinson,
	Andreas Färber


> But libguest can set it's accelerator option to whatever it wants.
> 
> If your running QEMU under a VM, it's pretty reasonable to have to
> use a special option IMHO.

It's also reasonable to have consecutive releases change defaults in
a more "friendly" way (i.e. from tcg to kvm:tcg), especially since
we'll get users that formerly used qemu-kvm and never had to specify
neither -machine accel nor --enable-kvm.

> > IMHO, default to KVM, fallback to TCG is the most friendly default
> > behaviour.
> 
> Except if a user expects good network performance and can't
> understand why they're getting 100kb/s.

libguestfs doesn't need network at all (though I wonder if they could
use lxc instead...).

Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 19:25                       ` [Qemu-devel] " Paolo Bonzini
@ 2012-10-01 20:07                         ` Anthony Liguori
  -1 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 20:07 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Jan Kiszka, kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Cole Robinson,
	Daniel P. Berrange, Andreas Färber

Paolo Bonzini <pbonzini@redhat.com> writes:

>> But libguest can set it's accelerator option to whatever it wants.
>> 
>> If your running QEMU under a VM, it's pretty reasonable to have to
>> use a special option IMHO.
>
> It's also reasonable to have consecutive releases change defaults in
> a more "friendly" way (i.e. from tcg to kvm:tcg), especially since
> we'll get users that formerly used qemu-kvm and never had to specify
> neither -machine accel nor --enable-kvm.

I agree with you except for the 'kvm:tcg' part.

>
>> > IMHO, default to KVM, fallback to TCG is the most friendly default
>> > behaviour.
>> 
>> Except if a user expects good network performance and can't
>> understand why they're getting 100kb/s.
>
> libguestfs doesn't need network at all (though I wonder if they could
> use lxc instead...).

FWIW, libguestfs already uses -machine accel=kvm:tcg so we can
completely the libguestfs use-case for this discussion.

Regards,

Anthony Liguori

>
> Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-01 20:07                         ` Anthony Liguori
  0 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-01 20:07 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Cole Robinson,
	Andreas Färber

Paolo Bonzini <pbonzini@redhat.com> writes:

>> But libguest can set it's accelerator option to whatever it wants.
>> 
>> If your running QEMU under a VM, it's pretty reasonable to have to
>> use a special option IMHO.
>
> It's also reasonable to have consecutive releases change defaults in
> a more "friendly" way (i.e. from tcg to kvm:tcg), especially since
> we'll get users that formerly used qemu-kvm and never had to specify
> neither -machine accel nor --enable-kvm.

I agree with you except for the 'kvm:tcg' part.

>
>> > IMHO, default to KVM, fallback to TCG is the most friendly default
>> > behaviour.
>> 
>> Except if a user expects good network performance and can't
>> understand why they're getting 100kb/s.
>
> libguestfs doesn't need network at all (though I wonder if they could
> use lxc instead...).

FWIW, libguestfs already uses -machine accel=kvm:tcg so we can
completely the libguestfs use-case for this discussion.

Regards,

Anthony Liguori

>
> Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 16:47                   ` Daniel P. Berrange
@ 2012-10-02  7:46                     ` Markus Armbruster
  -1 siblings, 0 replies; 97+ messages in thread
From: Markus Armbruster @ 2012-10-02  7:46 UTC (permalink / raw)
  To: Daniel P. Berrange
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Anthony Liguori,
	Cole Robinson, Paolo Bonzini, Andreas Färber

"Daniel P. Berrange" <berrange@redhat.com> writes:

> On Mon, Oct 01, 2012 at 06:43:00PM +0200, Andreas Färber wrote:
>> Hello Jan,
>> 
>> Am 01.10.2012 16:34, schrieb Jan Kiszka:
>> > If we built a target for a host that supports KVM in principle, set the
>> > default accelerator to KVM as well. This also means the start of QEMU
>> > will fail to start if KVM support turns out to be unavailable at
>> > runtime.
>> 
>> From a distro point of view this of course means that we will build
>> against KVM and that the new KVM default will start to fail for users on
>> very old hardware. Can't we do a runtime check to select the default?
>
> NB, this is *not* only about old hardware. There are plenty of users who
> use QEMU inside VMs. One very common usage I know of is image building
> tools which are run inside Amazon VMs, using libguestfs & QEMU.
>
> IMHO, default to KVM, fallback to TCG is the most friendly default
> behaviour.

Friendly perhaps, generating an infinite series of questions "why is my
guest slow as molasses?" certainly.

And for each instance of the question, there's an unknown number of
users who give QEMU a quick try, screw up KVM unknowingly, observe the
glacial speed, and conclude it's crap.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-02  7:46                     ` Markus Armbruster
  0 siblings, 0 replies; 97+ messages in thread
From: Markus Armbruster @ 2012-10-02  7:46 UTC (permalink / raw)
  To: Daniel P. Berrange
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Anthony Liguori,
	Cole Robinson, Paolo Bonzini, Andreas Färber

"Daniel P. Berrange" <berrange@redhat.com> writes:

> On Mon, Oct 01, 2012 at 06:43:00PM +0200, Andreas Färber wrote:
>> Hello Jan,
>> 
>> Am 01.10.2012 16:34, schrieb Jan Kiszka:
>> > If we built a target for a host that supports KVM in principle, set the
>> > default accelerator to KVM as well. This also means the start of QEMU
>> > will fail to start if KVM support turns out to be unavailable at
>> > runtime.
>> 
>> From a distro point of view this of course means that we will build
>> against KVM and that the new KVM default will start to fail for users on
>> very old hardware. Can't we do a runtime check to select the default?
>
> NB, this is *not* only about old hardware. There are plenty of users who
> use QEMU inside VMs. One very common usage I know of is image building
> tools which are run inside Amazon VMs, using libguestfs & QEMU.
>
> IMHO, default to KVM, fallback to TCG is the most friendly default
> behaviour.

Friendly perhaps, generating an infinite series of questions "why is my
guest slow as molasses?" certainly.

And for each instance of the question, there's an unknown number of
users who give QEMU a quick try, screw up KVM unknowingly, observe the
glacial speed, and conclude it's crap.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
@ 2012-10-02  8:14           ` Daniel P. Berrange
  -1 siblings, 0 replies; 97+ messages in thread
From: Daniel P. Berrange @ 2012-10-02  8:14 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: Jan Kiszka, Marcelo Tosatti, kvm, qemu-devel, Cole Robinson,
	Scott Moser, Andreas Färber, Michael Tokarev

On Mon, Oct 01, 2012 at 08:19:29AM -0500, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?

If that is upstream's recommendation, then I see no issue with switching
Fedora 19 / RHEL-7 to use qemu.git instead of qemu-kvm.git.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-02  8:14           ` Daniel P. Berrange
  0 siblings, 0 replies; 97+ messages in thread
From: Daniel P. Berrange @ 2012-10-02  8:14 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Cole Robinson, Andreas Färber

On Mon, Oct 01, 2012 at 08:19:29AM -0500, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> I think at this point, none of this matters but I added the various
> distro maintainers to the thread.
> 
> I think it's time for the distros to drop qemu-kvm and just ship
> qemu.git.  Is there anything else that needs to happen to make that
> switch?

If that is upstream's recommendation, then I see no issue with switching
Fedora 19 / RHEL-7 to use qemu.git instead of qemu-kvm.git.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-02  7:46                     ` [Qemu-devel] " Markus Armbruster
@ 2012-10-02  8:15                       ` Aurelien Jarno
  -1 siblings, 0 replies; 97+ messages in thread
From: Aurelien Jarno @ 2012-10-02  8:15 UTC (permalink / raw)
  To: Markus Armbruster
  Cc: Daniel P. Berrange, kvm, Scott Moser, Jan Kiszka,
	Marcelo Tosatti, Michael Tokarev, qemu-devel, Bruce Rogers,
	Avi Kivity, Anthony Liguori, Cole Robinson, Paolo Bonzini,
	Andreas Färber

On Tue, Oct 02, 2012 at 09:46:12AM +0200, Markus Armbruster wrote:
> "Daniel P. Berrange" <berrange@redhat.com> writes:
> 
> > On Mon, Oct 01, 2012 at 06:43:00PM +0200, Andreas Färber wrote:
> >> Hello Jan,
> >> 
> >> Am 01.10.2012 16:34, schrieb Jan Kiszka:
> >> > If we built a target for a host that supports KVM in principle, set the
> >> > default accelerator to KVM as well. This also means the start of QEMU
> >> > will fail to start if KVM support turns out to be unavailable at
> >> > runtime.
> >> 
> >> From a distro point of view this of course means that we will build
> >> against KVM and that the new KVM default will start to fail for users on
> >> very old hardware. Can't we do a runtime check to select the default?
> >
> > NB, this is *not* only about old hardware. There are plenty of users who
> > use QEMU inside VMs. One very common usage I know of is image building
> > tools which are run inside Amazon VMs, using libguestfs & QEMU.
> >
> > IMHO, default to KVM, fallback to TCG is the most friendly default
> > behaviour.
> 
> Friendly perhaps, generating an infinite series of questions "why is my
> guest slow as molasses?" certainly.
> 
> And for each instance of the question, there's an unknown number of
> users who give QEMU a quick try, screw up KVM unknowingly, observe the
> glacial speed, and conclude it's crap.
> 

That's why it should not fallback silently to TCG, but warn the user
about that.

On the other hand, on a machine without KVM support (which might just be
because of local policy admin policy which doesn't provide access the 
/dev/kvm, nested virtualization, etc.), if QEMU fails to start (while
previous versions were working), the user can conclude that QEMU is
crap.

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-02  8:15                       ` Aurelien Jarno
  0 siblings, 0 replies; 97+ messages in thread
From: Aurelien Jarno @ 2012-10-02  8:15 UTC (permalink / raw)
  To: Markus Armbruster
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Bruce Rogers, Avi Kivity, Anthony Liguori,
	Cole Robinson, Paolo Bonzini, Andreas Färber

On Tue, Oct 02, 2012 at 09:46:12AM +0200, Markus Armbruster wrote:
> "Daniel P. Berrange" <berrange@redhat.com> writes:
> 
> > On Mon, Oct 01, 2012 at 06:43:00PM +0200, Andreas Färber wrote:
> >> Hello Jan,
> >> 
> >> Am 01.10.2012 16:34, schrieb Jan Kiszka:
> >> > If we built a target for a host that supports KVM in principle, set the
> >> > default accelerator to KVM as well. This also means the start of QEMU
> >> > will fail to start if KVM support turns out to be unavailable at
> >> > runtime.
> >> 
> >> From a distro point of view this of course means that we will build
> >> against KVM and that the new KVM default will start to fail for users on
> >> very old hardware. Can't we do a runtime check to select the default?
> >
> > NB, this is *not* only about old hardware. There are plenty of users who
> > use QEMU inside VMs. One very common usage I know of is image building
> > tools which are run inside Amazon VMs, using libguestfs & QEMU.
> >
> > IMHO, default to KVM, fallback to TCG is the most friendly default
> > behaviour.
> 
> Friendly perhaps, generating an infinite series of questions "why is my
> guest slow as molasses?" certainly.
> 
> And for each instance of the question, there's an unknown number of
> users who give QEMU a quick try, screw up KVM unknowingly, observe the
> glacial speed, and conclude it's crap.
> 

That's why it should not fallback silently to TCG, but warn the user
about that.

On the other hand, on a machine without KVM support (which might just be
because of local policy admin policy which doesn't provide access the 
/dev/kvm, nested virtualization, etc.), if QEMU fails to start (while
previous versions were working), the user can conclude that QEMU is
crap.

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-02  7:46                     ` [Qemu-devel] " Markus Armbruster
@ 2012-10-03  6:58                       ` Michael Tokarev
  -1 siblings, 0 replies; 97+ messages in thread
From: Michael Tokarev @ 2012-10-03  6:58 UTC (permalink / raw)
  To: Markus Armbruster
  Cc: Daniel P. Berrange, kvm, Scott Moser, Jan Kiszka,
	Marcelo Tosatti, qemu-devel, Bruce Rogers, Avi Kivity,
	Anthony Liguori, Cole Robinson, Paolo Bonzini,
	Andreas Färber

On 02.10.2012 11:46, Markus Armbruster wrote:
> "Daniel P. Berrange" <berrange@redhat.com> writes:

>> IMHO, default to KVM, fallback to TCG is the most friendly default
>> behaviour.
> 
> Friendly perhaps, generating an infinite series of questions "why is my
> guest slow as molasses?" certainly.

With a warning about "switching to slow emulation mode because .."
printed at startup that becomes a non-issue, because there's no
reason to ask more questions about why it is slow - it already
said why.  Yes some may try to ask what to do, which is different.

Every howto nowadays mentions kvm modules and /dev/kvm device
permissions.

> And for each instance of the question, there's an unknown number of
> users who give QEMU a quick try, screw up KVM unknowingly, observe the
> glacial speed, and conclude it's crap.

This is, again, I think, unfair.  With the warning message it becomes
more or less obvious.

If you're talking about users who run it with -daemonize argument -
this is a) stupid to do when TRYING it out, so it's not a big deal
to lose another stupid user, and b) qemu should init everything
first and throw all warnings and fatal errors before daemonizing,
if this is not the case it should be fixed in the code.

And if you're talking about management software (libvirt and others),
it controls all the required privileges already and explicitly
requests acceleration and other stuff.

So the best thing to do is what Daniel, Aurelien, Paolo and others
are suggested: accel=kvm:tcg with a warning.

Thanks,

/mjt


^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-03  6:58                       ` Michael Tokarev
  0 siblings, 0 replies; 97+ messages in thread
From: Michael Tokarev @ 2012-10-03  6:58 UTC (permalink / raw)
  To: Markus Armbruster
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, qemu-devel,
	Bruce Rogers, Avi Kivity, Anthony Liguori, Cole Robinson,
	Paolo Bonzini, Andreas Färber

On 02.10.2012 11:46, Markus Armbruster wrote:
> "Daniel P. Berrange" <berrange@redhat.com> writes:

>> IMHO, default to KVM, fallback to TCG is the most friendly default
>> behaviour.
> 
> Friendly perhaps, generating an infinite series of questions "why is my
> guest slow as molasses?" certainly.

With a warning about "switching to slow emulation mode because .."
printed at startup that becomes a non-issue, because there's no
reason to ask more questions about why it is slow - it already
said why.  Yes some may try to ask what to do, which is different.

Every howto nowadays mentions kvm modules and /dev/kvm device
permissions.

> And for each instance of the question, there's an unknown number of
> users who give QEMU a quick try, screw up KVM unknowingly, observe the
> glacial speed, and conclude it's crap.

This is, again, I think, unfair.  With the warning message it becomes
more or less obvious.

If you're talking about users who run it with -daemonize argument -
this is a) stupid to do when TRYING it out, so it's not a big deal
to lose another stupid user, and b) qemu should init everything
first and throw all warnings and fatal errors before daemonizing,
if this is not the case it should be fixed in the code.

And if you're talking about management software (libvirt and others),
it controls all the required privileges already and explicitly
requests acceleration and other stuff.

So the best thing to do is what Daniel, Aurelien, Paolo and others
are suggested: accel=kvm:tcg with a warning.

Thanks,

/mjt

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 16:20                 ` [Qemu-devel] " Anthony Liguori
@ 2012-10-03  9:02                   ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-03  9:02 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Blue Swirl, Avi Kivity, Cole Robinson, Paolo Bonzini,
	Andreas Färber, Aurelien Jarno

[-- Attachment #1: Type: text/plain, Size: 2670 bytes --]

On 2012-10-01 18:20, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
>> If we built a target for a host that supports KVM in principle, set the
>> default accelerator to KVM as well. This also means the start of QEMU
>> will fail to start if KVM support turns out to be unavailable at
>> runtime.
>>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>  kvm-all.c  |    1 +
>>  kvm-stub.c |    1 +
>>  kvm.h      |    1 +
>>  vl.c       |    4 ++--
>>  4 files changed, 5 insertions(+), 2 deletions(-)
>>
>> diff --git a/kvm-all.c b/kvm-all.c
>> index 92a7137..4d5f86c 100644
>> --- a/kvm-all.c
>> +++ b/kvm-all.c
>> @@ -103,6 +103,7 @@ struct KVMState
>>  #endif
>>  };
>>  
>> +bool kvm_configured = true;
>>  KVMState *kvm_state;
>>  bool kvm_kernel_irqchip;
>>  bool kvm_async_interrupts_allowed;
>> diff --git a/kvm-stub.c b/kvm-stub.c
>> index 3c52eb5..86a6451 100644
>> --- a/kvm-stub.c
>> +++ b/kvm-stub.c
>> @@ -17,6 +17,7 @@
>>  #include "gdbstub.h"
>>  #include "kvm.h"
>>  
>> +bool kvm_configured;
>>  KVMState *kvm_state;
>>  bool kvm_kernel_irqchip;
>>  bool kvm_async_interrupts_allowed;
>> diff --git a/kvm.h b/kvm.h
>> index dea2998..9936e5f 100644
>> --- a/kvm.h
>> +++ b/kvm.h
>> @@ -22,6 +22,7 @@
>>  #include <linux/kvm.h>
>>  #endif
>>  
>> +extern bool kvm_configured;
>>  extern int kvm_allowed;
>>  extern bool kvm_kernel_irqchip;
>>  extern bool kvm_async_interrupts_allowed;
>> diff --git a/vl.c b/vl.c
>> index 8d305ca..f557bd1 100644
>> --- a/vl.c
>> +++ b/vl.c
>> @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
>>      }
>>  
>>      if (p == NULL) {
>> -        /* Use the default "accelerator", tcg */
>> -        p = "tcg";
>> +        /* The default accelerator depends on the availability of KVM. */
>> +        p = kvm_configured ? "kvm" : "tcg";
>>      }
> 
> How about making this an arch_init() function call and then using a #if
> defined(KVM_CONFIG) in arch_init.c?
> 
> I hate to introduce another global variable if we can avoid it...

Hacked too quickly. In fact, kvm_configured is simply kvm_available().
However, resistance appear to be too high here.

Jan

> 
> Otherwise:
> 
> Acked-by: Anthony Liguori <aliguori@us.ibm.com>
> 
> Blue/Aurelien, any objections?
> 
> Regards,
> 
> Anthony Liguori
> 
>>  
>>      while (!accel_initialised && *p != '\0') {
>> -- 
>> 1.7.3.4
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-03  9:02                   ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-03  9:02 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Blue Swirl, Avi Kivity, Cole Robinson, Paolo Bonzini,
	Andreas Färber, Aurelien Jarno

[-- Attachment #1: Type: text/plain, Size: 2670 bytes --]

On 2012-10-01 18:20, Anthony Liguori wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
> 
>> If we built a target for a host that supports KVM in principle, set the
>> default accelerator to KVM as well. This also means the start of QEMU
>> will fail to start if KVM support turns out to be unavailable at
>> runtime.
>>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>  kvm-all.c  |    1 +
>>  kvm-stub.c |    1 +
>>  kvm.h      |    1 +
>>  vl.c       |    4 ++--
>>  4 files changed, 5 insertions(+), 2 deletions(-)
>>
>> diff --git a/kvm-all.c b/kvm-all.c
>> index 92a7137..4d5f86c 100644
>> --- a/kvm-all.c
>> +++ b/kvm-all.c
>> @@ -103,6 +103,7 @@ struct KVMState
>>  #endif
>>  };
>>  
>> +bool kvm_configured = true;
>>  KVMState *kvm_state;
>>  bool kvm_kernel_irqchip;
>>  bool kvm_async_interrupts_allowed;
>> diff --git a/kvm-stub.c b/kvm-stub.c
>> index 3c52eb5..86a6451 100644
>> --- a/kvm-stub.c
>> +++ b/kvm-stub.c
>> @@ -17,6 +17,7 @@
>>  #include "gdbstub.h"
>>  #include "kvm.h"
>>  
>> +bool kvm_configured;
>>  KVMState *kvm_state;
>>  bool kvm_kernel_irqchip;
>>  bool kvm_async_interrupts_allowed;
>> diff --git a/kvm.h b/kvm.h
>> index dea2998..9936e5f 100644
>> --- a/kvm.h
>> +++ b/kvm.h
>> @@ -22,6 +22,7 @@
>>  #include <linux/kvm.h>
>>  #endif
>>  
>> +extern bool kvm_configured;
>>  extern int kvm_allowed;
>>  extern bool kvm_kernel_irqchip;
>>  extern bool kvm_async_interrupts_allowed;
>> diff --git a/vl.c b/vl.c
>> index 8d305ca..f557bd1 100644
>> --- a/vl.c
>> +++ b/vl.c
>> @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
>>      }
>>  
>>      if (p == NULL) {
>> -        /* Use the default "accelerator", tcg */
>> -        p = "tcg";
>> +        /* The default accelerator depends on the availability of KVM. */
>> +        p = kvm_configured ? "kvm" : "tcg";
>>      }
> 
> How about making this an arch_init() function call and then using a #if
> defined(KVM_CONFIG) in arch_init.c?
> 
> I hate to introduce another global variable if we can avoid it...

Hacked too quickly. In fact, kvm_configured is simply kvm_available().
However, resistance appear to be too high here.

Jan

> 
> Otherwise:
> 
> Acked-by: Anthony Liguori <aliguori@us.ibm.com>
> 
> Blue/Aurelien, any objections?
> 
> Regards,
> 
> Anthony Liguori
> 
>>  
>>      while (!accel_initialised && *p != '\0') {
>> -- 
>> 1.7.3.4
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-03  6:58                       ` Michael Tokarev
@ 2012-10-03  9:05                         ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-03  9:05 UTC (permalink / raw)
  To: Michael Tokarev
  Cc: kvm, Scott Moser, Marcelo Tosatti, Markus Armbruster, qemu-devel,
	Avi Kivity, Anthony Liguori, Cole Robinson, Paolo Bonzini,
	Bruce Rogers, Andreas Färber

[-- Attachment #1: Type: text/plain, Size: 2164 bytes --]

On 2012-10-03 08:58, Michael Tokarev wrote:
> On 02.10.2012 11:46, Markus Armbruster wrote:
>> "Daniel P. Berrange" <berrange@redhat.com> writes:
> 
>>> IMHO, default to KVM, fallback to TCG is the most friendly default
>>> behaviour.
>>
>> Friendly perhaps, generating an infinite series of questions "why is my
>> guest slow as molasses?" certainly.
> 
> With a warning about "switching to slow emulation mode because .."
> printed at startup that becomes a non-issue, because there's no
> reason to ask more questions about why it is slow - it already
> said why.  Yes some may try to ask what to do, which is different.
> 
> Every howto nowadays mentions kvm modules and /dev/kvm device
> permissions.
> 
>> And for each instance of the question, there's an unknown number of
>> users who give QEMU a quick try, screw up KVM unknowingly, observe the
>> glacial speed, and conclude it's crap.
> 
> This is, again, I think, unfair.  With the warning message it becomes
> more or less obvious.
> 
> If you're talking about users who run it with -daemonize argument -
> this is a) stupid to do when TRYING it out, so it's not a big deal
> to lose another stupid user, and b) qemu should init everything
> first and throw all warnings and fatal errors before daemonizing,
> if this is not the case it should be fixed in the code.
> 
> And if you're talking about management software (libvirt and others),
> it controls all the required privileges already and explicitly
> requests acceleration and other stuff.
> 
> So the best thing to do is what Daniel, Aurelien, Paolo and others
> are suggested: accel=kvm:tcg with a warning.

Well, we had a lot of problems with such a fallback in the past, but I
think we had no proper warnings back then.

I'm not fully believing in users will always realize the console
message. I would therefore suggest to change the window title of QEMU as
well if we fail to initialize some accelerator. Something like "QEMU
without KVM" (could be "QEMU without $FAILED_ACCEL" in the end, i.e. not
just for KVM). If that makes sense for everyone, I'll hack the required
patches.

Jan



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-03  9:05                         ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-03  9:05 UTC (permalink / raw)
  To: Michael Tokarev
  Cc: kvm, Scott Moser, Marcelo Tosatti, Markus Armbruster, qemu-devel,
	Avi Kivity, Anthony Liguori, Cole Robinson, Paolo Bonzini,
	Bruce Rogers, Andreas Färber

[-- Attachment #1: Type: text/plain, Size: 2164 bytes --]

On 2012-10-03 08:58, Michael Tokarev wrote:
> On 02.10.2012 11:46, Markus Armbruster wrote:
>> "Daniel P. Berrange" <berrange@redhat.com> writes:
> 
>>> IMHO, default to KVM, fallback to TCG is the most friendly default
>>> behaviour.
>>
>> Friendly perhaps, generating an infinite series of questions "why is my
>> guest slow as molasses?" certainly.
> 
> With a warning about "switching to slow emulation mode because .."
> printed at startup that becomes a non-issue, because there's no
> reason to ask more questions about why it is slow - it already
> said why.  Yes some may try to ask what to do, which is different.
> 
> Every howto nowadays mentions kvm modules and /dev/kvm device
> permissions.
> 
>> And for each instance of the question, there's an unknown number of
>> users who give QEMU a quick try, screw up KVM unknowingly, observe the
>> glacial speed, and conclude it's crap.
> 
> This is, again, I think, unfair.  With the warning message it becomes
> more or less obvious.
> 
> If you're talking about users who run it with -daemonize argument -
> this is a) stupid to do when TRYING it out, so it's not a big deal
> to lose another stupid user, and b) qemu should init everything
> first and throw all warnings and fatal errors before daemonizing,
> if this is not the case it should be fixed in the code.
> 
> And if you're talking about management software (libvirt and others),
> it controls all the required privileges already and explicitly
> requests acceleration and other stuff.
> 
> So the best thing to do is what Daniel, Aurelien, Paolo and others
> are suggested: accel=kvm:tcg with a warning.

Well, we had a lot of problems with such a fallback in the past, but I
think we had no proper warnings back then.

I'm not fully believing in users will always realize the console
message. I would therefore suggest to change the window title of QEMU as
well if we fail to initialize some accelerator. Something like "QEMU
without KVM" (could be "QEMU without $FAILED_ACCEL" in the end, i.e. not
just for KVM). If that makes sense for everyone, I'll hack the required
patches.

Jan



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-01 13:26           ` [Qemu-devel] " Jan Kiszka
@ 2012-10-03  9:55             ` Gleb Natapov
  -1 siblings, 0 replies; 97+ messages in thread
From: Gleb Natapov @ 2012-10-03  9:55 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: Anthony Liguori, kvm, Scott Moser, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Cole Robinson, Andreas Färber

On Mon, Oct 01, 2012 at 03:26:05PM +0200, Jan Kiszka wrote:
> On 2012-10-01 15:19, Anthony Liguori wrote:
> > Jan Kiszka <jan.kiszka@siemens.com> writes:
> > 
> >> On 2012-10-01 11:31, Marcelo Tosatti wrote:
> >>
> >> It's not just about default configs. We need to validate if the
> >> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
> >> around definitely not). For the command line switches, we could provide
> >> a wrapper script that translates them into upstream format or simply
> >> ignores them. That should be harmless to carry upstream.
> > 
> > qemu-kvm has:
> > 
> >  -no-kvm
> >  -no-kvm-irqchip
> >  -no-kvm-pit
> >  -no-kvm-pit-reinjection
> >  -tdf <- does nothing
> > 
> > There are replacements for all of the above.  If we need to add them to
> > qemu.git, it's not big deal to add them.
> 
> But I don't think we should add them to the source code. This can
> perfectly be handled my a (disposable) script layer on top of
> qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.
> 
> > 
> >  -drive ...,boot= <- this is ignored
> > 
> > cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> 
> Right, so nothing is lost when migrating to QEMU.
> 
> > 
> > testdev which is nice but only used for development
> > 
Jan, do you have a plan for testdev device? It would be a pity to have
qemu-kvm just for that.

> > Default nic is rtl8139 vs. e1000.
> > 
> > Some logic to move change the default VGA ram size to 16mb for pc-1.2
> > (QEMU uses 16mb by default now too).
> 
> Also nicely manageable in a wrapper.
> 
> > 
> > I think at this point, none of this matters but I added the various
> > distro maintainers to the thread.
> > 
> > I think it's time for the distros to drop qemu-kvm and just ship
> > qemu.git.
> 
> +1
> 
> Jan
> 
> >  Is there anything else that needs to happen to make that
> > switch?
> > 
> > Regards,
> > 
> > Anthony Liguori
> 
> -- 
> Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
> Corporate Competence Center Embedded Linux

--
			Gleb.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-03  9:55             ` Gleb Natapov
  0 siblings, 0 replies; 97+ messages in thread
From: Gleb Natapov @ 2012-10-03  9:55 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Anthony Liguori, Cole Robinson, Andreas Färber

On Mon, Oct 01, 2012 at 03:26:05PM +0200, Jan Kiszka wrote:
> On 2012-10-01 15:19, Anthony Liguori wrote:
> > Jan Kiszka <jan.kiszka@siemens.com> writes:
> > 
> >> On 2012-10-01 11:31, Marcelo Tosatti wrote:
> >>
> >> It's not just about default configs. We need to validate if the
> >> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
> >> around definitely not). For the command line switches, we could provide
> >> a wrapper script that translates them into upstream format or simply
> >> ignores them. That should be harmless to carry upstream.
> > 
> > qemu-kvm has:
> > 
> >  -no-kvm
> >  -no-kvm-irqchip
> >  -no-kvm-pit
> >  -no-kvm-pit-reinjection
> >  -tdf <- does nothing
> > 
> > There are replacements for all of the above.  If we need to add them to
> > qemu.git, it's not big deal to add them.
> 
> But I don't think we should add them to the source code. This can
> perfectly be handled my a (disposable) script layer on top of
> qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.
> 
> > 
> >  -drive ...,boot= <- this is ignored
> > 
> > cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> 
> Right, so nothing is lost when migrating to QEMU.
> 
> > 
> > testdev which is nice but only used for development
> > 
Jan, do you have a plan for testdev device? It would be a pity to have
qemu-kvm just for that.

> > Default nic is rtl8139 vs. e1000.
> > 
> > Some logic to move change the default VGA ram size to 16mb for pc-1.2
> > (QEMU uses 16mb by default now too).
> 
> Also nicely manageable in a wrapper.
> 
> > 
> > I think at this point, none of this matters but I added the various
> > distro maintainers to the thread.
> > 
> > I think it's time for the distros to drop qemu-kvm and just ship
> > qemu.git.
> 
> +1
> 
> Jan
> 
> >  Is there anything else that needs to happen to make that
> > switch?
> > 
> > Regards,
> > 
> > Anthony Liguori
> 
> -- 
> Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
> Corporate Competence Center Embedded Linux

--
			Gleb.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-03  9:55             ` Gleb Natapov
@ 2012-10-03 10:06               ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-03 10:06 UTC (permalink / raw)
  To: Gleb Natapov
  Cc: Anthony Liguori, kvm, Scott Moser, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Cole Robinson, Andreas Färber

[-- Attachment #1: Type: text/plain, Size: 1511 bytes --]

On 2012-10-03 11:55, Gleb Natapov wrote:
> On Mon, Oct 01, 2012 at 03:26:05PM +0200, Jan Kiszka wrote:
>> On 2012-10-01 15:19, Anthony Liguori wrote:
>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>
>>>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>>>
>>>> It's not just about default configs. We need to validate if the
>>>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>>>> around definitely not). For the command line switches, we could provide
>>>> a wrapper script that translates them into upstream format or simply
>>>> ignores them. That should be harmless to carry upstream.
>>>
>>> qemu-kvm has:
>>>
>>>  -no-kvm
>>>  -no-kvm-irqchip
>>>  -no-kvm-pit
>>>  -no-kvm-pit-reinjection
>>>  -tdf <- does nothing
>>>
>>> There are replacements for all of the above.  If we need to add them to
>>> qemu.git, it's not big deal to add them.
>>
>> But I don't think we should add them to the source code. This can
>> perfectly be handled my a (disposable) script layer on top of
>> qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.
>>
>>>
>>>  -drive ...,boot= <- this is ignored
>>>
>>> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
>>
>> Right, so nothing is lost when migrating to QEMU.
>>
>>>
>>> testdev which is nice but only used for development
>>>
> Jan, do you have a plan for testdev device? It would be a pity to have
> qemu-kvm just for that.

Nope, not on my schedule.

Jan



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-03 10:06               ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-03 10:06 UTC (permalink / raw)
  To: Gleb Natapov
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Anthony Liguori, Cole Robinson, Andreas Färber

[-- Attachment #1: Type: text/plain, Size: 1511 bytes --]

On 2012-10-03 11:55, Gleb Natapov wrote:
> On Mon, Oct 01, 2012 at 03:26:05PM +0200, Jan Kiszka wrote:
>> On 2012-10-01 15:19, Anthony Liguori wrote:
>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>
>>>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>>>
>>>> It's not just about default configs. We need to validate if the
>>>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>>>> around definitely not). For the command line switches, we could provide
>>>> a wrapper script that translates them into upstream format or simply
>>>> ignores them. That should be harmless to carry upstream.
>>>
>>> qemu-kvm has:
>>>
>>>  -no-kvm
>>>  -no-kvm-irqchip
>>>  -no-kvm-pit
>>>  -no-kvm-pit-reinjection
>>>  -tdf <- does nothing
>>>
>>> There are replacements for all of the above.  If we need to add them to
>>> qemu.git, it's not big deal to add them.
>>
>> But I don't think we should add them to the source code. This can
>> perfectly be handled my a (disposable) script layer on top of
>> qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.
>>
>>>
>>>  -drive ...,boot= <- this is ignored
>>>
>>> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
>>
>> Right, so nothing is lost when migrating to QEMU.
>>
>>>
>>> testdev which is nice but only used for development
>>>
> Jan, do you have a plan for testdev device? It would be a pity to have
> qemu-kvm just for that.

Nope, not on my schedule.

Jan



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 259 bytes --]

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-03 10:06               ` Jan Kiszka
@ 2012-10-03 10:11                 ` Gleb Natapov
  -1 siblings, 0 replies; 97+ messages in thread
From: Gleb Natapov @ 2012-10-03 10:11 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: Anthony Liguori, kvm, Scott Moser, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Cole Robinson, Andreas Färber

On Wed, Oct 03, 2012 at 12:06:57PM +0200, Jan Kiszka wrote:
> On 2012-10-03 11:55, Gleb Natapov wrote:
> > On Mon, Oct 01, 2012 at 03:26:05PM +0200, Jan Kiszka wrote:
> >> On 2012-10-01 15:19, Anthony Liguori wrote:
> >>> Jan Kiszka <jan.kiszka@siemens.com> writes:
> >>>
> >>>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
> >>>>
> >>>> It's not just about default configs. We need to validate if the
> >>>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
> >>>> around definitely not). For the command line switches, we could provide
> >>>> a wrapper script that translates them into upstream format or simply
> >>>> ignores them. That should be harmless to carry upstream.
> >>>
> >>> qemu-kvm has:
> >>>
> >>>  -no-kvm
> >>>  -no-kvm-irqchip
> >>>  -no-kvm-pit
> >>>  -no-kvm-pit-reinjection
> >>>  -tdf <- does nothing
> >>>
> >>> There are replacements for all of the above.  If we need to add them to
> >>> qemu.git, it's not big deal to add them.
> >>
> >> But I don't think we should add them to the source code. This can
> >> perfectly be handled my a (disposable) script layer on top of
> >> qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.
> >>
> >>>
> >>>  -drive ...,boot= <- this is ignored
> >>>
> >>> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> >>
> >> Right, so nothing is lost when migrating to QEMU.
> >>
> >>>
> >>> testdev which is nice but only used for development
> >>>
> > Jan, do you have a plan for testdev device? It would be a pity to have
> > qemu-kvm just for that.
> 
> Nope, not on my schedule.
> 
Understood :)

--
			Gleb.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-03 10:11                 ` Gleb Natapov
  0 siblings, 0 replies; 97+ messages in thread
From: Gleb Natapov @ 2012-10-03 10:11 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Anthony Liguori, Cole Robinson, Andreas Färber

On Wed, Oct 03, 2012 at 12:06:57PM +0200, Jan Kiszka wrote:
> On 2012-10-03 11:55, Gleb Natapov wrote:
> > On Mon, Oct 01, 2012 at 03:26:05PM +0200, Jan Kiszka wrote:
> >> On 2012-10-01 15:19, Anthony Liguori wrote:
> >>> Jan Kiszka <jan.kiszka@siemens.com> writes:
> >>>
> >>>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
> >>>>
> >>>> It's not just about default configs. We need to validate if the
> >>>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
> >>>> around definitely not). For the command line switches, we could provide
> >>>> a wrapper script that translates them into upstream format or simply
> >>>> ignores them. That should be harmless to carry upstream.
> >>>
> >>> qemu-kvm has:
> >>>
> >>>  -no-kvm
> >>>  -no-kvm-irqchip
> >>>  -no-kvm-pit
> >>>  -no-kvm-pit-reinjection
> >>>  -tdf <- does nothing
> >>>
> >>> There are replacements for all of the above.  If we need to add them to
> >>> qemu.git, it's not big deal to add them.
> >>
> >> But I don't think we should add them to the source code. This can
> >> perfectly be handled my a (disposable) script layer on top of
> >> qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.
> >>
> >>>
> >>>  -drive ...,boot= <- this is ignored
> >>>
> >>> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
> >>
> >> Right, so nothing is lost when migrating to QEMU.
> >>
> >>>
> >>> testdev which is nice but only used for development
> >>>
> > Jan, do you have a plan for testdev device? It would be a pity to have
> > qemu-kvm just for that.
> 
> Nope, not on my schedule.
> 
Understood :)

--
			Gleb.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-03  9:55             ` Gleb Natapov
@ 2012-10-03 10:57               ` Lucas Meneghel Rodrigues
  -1 siblings, 0 replies; 97+ messages in thread
From: Lucas Meneghel Rodrigues @ 2012-10-03 10:57 UTC (permalink / raw)
  To: Gleb Natapov
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Anthony Liguori, Cole Robinson, Andreas Färber

On 10/03/2012 06:55 AM, Gleb Natapov wrote:
> On Mon, Oct 01, 2012 at 03:26:05PM +0200, Jan Kiszka wrote:
>> On 2012-10-01 15:19, Anthony Liguori wrote:
>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>
>>>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>>>
>>>> It's not just about default configs. We need to validate if the
>>>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>>>> around definitely not). For the command line switches, we could provide
>>>> a wrapper script that translates them into upstream format or simply
>>>> ignores them. That should be harmless to carry upstream.
>>>
>>> qemu-kvm has:
>>>
>>>   -no-kvm
>>>   -no-kvm-irqchip
>>>   -no-kvm-pit
>>>   -no-kvm-pit-reinjection
>>>   -tdf <- does nothing
>>>
>>> There are replacements for all of the above.  If we need to add them to
>>> qemu.git, it's not big deal to add them.
>>
>> But I don't think we should add them to the source code. This can
>> perfectly be handled my a (disposable) script layer on top of
>> qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.
>>
>>>
>>>   -drive ...,boot= <- this is ignored
>>>
>>> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
>>
>> Right, so nothing is lost when migrating to QEMU.
>>
>>>
>>> testdev which is nice but only used for development
>>>
> Jan, do you have a plan for testdev device? It would be a pity to have
> qemu-kvm just for that.

Yep, I did send patches with the testdev device present on qemu-kvm.git 
to qemu.git a while ago, but there were many comments on the review, I 
ended up not implementing everything that was asked and the patches were 
archived.

If nobody wants to step up to port it, I'll re-read the original thread 
and will spin up new patches (and try to go through the end with it). 
Executing the KVM unittests is something that we can't afford to lose, 
so I'd say it's important on this last mile effort to get rid of qemu-kvm.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-03 10:57               ` Lucas Meneghel Rodrigues
  0 siblings, 0 replies; 97+ messages in thread
From: Lucas Meneghel Rodrigues @ 2012-10-03 10:57 UTC (permalink / raw)
  To: Gleb Natapov
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Anthony Liguori, Cole Robinson, Andreas Färber

On 10/03/2012 06:55 AM, Gleb Natapov wrote:
> On Mon, Oct 01, 2012 at 03:26:05PM +0200, Jan Kiszka wrote:
>> On 2012-10-01 15:19, Anthony Liguori wrote:
>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>
>>>> On 2012-10-01 11:31, Marcelo Tosatti wrote:
>>>>
>>>> It's not just about default configs. We need to validate if the
>>>> migration formats are truly compatible (qemu-kvm -> QEMU, the other way
>>>> around definitely not). For the command line switches, we could provide
>>>> a wrapper script that translates them into upstream format or simply
>>>> ignores them. That should be harmless to carry upstream.
>>>
>>> qemu-kvm has:
>>>
>>>   -no-kvm
>>>   -no-kvm-irqchip
>>>   -no-kvm-pit
>>>   -no-kvm-pit-reinjection
>>>   -tdf <- does nothing
>>>
>>> There are replacements for all of the above.  If we need to add them to
>>> qemu.git, it's not big deal to add them.
>>
>> But I don't think we should add them to the source code. This can
>> perfectly be handled my a (disposable) script layer on top of
>> qemu-system-x86_64 - the namespace (qemu-kvm in most cases) is also free.
>>
>>>
>>>   -drive ...,boot= <- this is ignored
>>>
>>> cpu_set command for CPU hotplug which is known broken in qemu-kvm.
>>
>> Right, so nothing is lost when migrating to QEMU.
>>
>>>
>>> testdev which is nice but only used for development
>>>
> Jan, do you have a plan for testdev device? It would be a pity to have
> qemu-kvm just for that.

Yep, I did send patches with the testdev device present on qemu-kvm.git 
to qemu.git a while ago, but there were many comments on the review, I 
ended up not implementing everything that was asked and the patches were 
archived.

If nobody wants to step up to port it, I'll re-read the original thread 
and will spin up new patches (and try to go through the end with it). 
Executing the KVM unittests is something that we can't afford to lose, 
so I'd say it's important on this last mile effort to get rid of qemu-kvm.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-03 10:57               ` [Qemu-devel] " Lucas Meneghel Rodrigues
@ 2012-10-03 13:19                 ` Paolo Bonzini
  -1 siblings, 0 replies; 97+ messages in thread
From: Paolo Bonzini @ 2012-10-03 13:19 UTC (permalink / raw)
  To: Lucas Meneghel Rodrigues
  Cc: Gleb Natapov, kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Anthony Liguori, Cole Robinson,
	Andreas Färber

Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
> Yep, I did send patches with the testdev device present on qemu-kvm.git
> to qemu.git a while ago, but there were many comments on the review, I
> ended up not implementing everything that was asked and the patches were
> archived.
> 
> If nobody wants to step up to port it, I'll re-read the original thread
> and will spin up new patches (and try to go through the end with it).
> Executing the KVM unittests is something that we can't afford to lose,
> so I'd say it's important on this last mile effort to get rid of qemu-kvm.

Absolutely, IIRC the problem was that testdev did a little bit of
everything... let's see what's the functionality of testdev:

- write (port 0xf1), can be replaced in autotest with:
-device isa-debugcon,iobase=0xf1,chardev=...

- exit code (port 0xf4), see this series:
http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html

- ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:

        u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
        if (rs)
            rs += 16 * 1024 * 1024;
        else
            rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
                  + 1 * 1024 * 1024);

The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.

Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-03 13:19                 ` Paolo Bonzini
  0 siblings, 0 replies; 97+ messages in thread
From: Paolo Bonzini @ 2012-10-03 13:19 UTC (permalink / raw)
  To: Lucas Meneghel Rodrigues
  Cc: Gleb Natapov, kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Anthony Liguori, Cole Robinson,
	Andreas Färber

Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
> Yep, I did send patches with the testdev device present on qemu-kvm.git
> to qemu.git a while ago, but there were many comments on the review, I
> ended up not implementing everything that was asked and the patches were
> archived.
> 
> If nobody wants to step up to port it, I'll re-read the original thread
> and will spin up new patches (and try to go through the end with it).
> Executing the KVM unittests is something that we can't afford to lose,
> so I'd say it's important on this last mile effort to get rid of qemu-kvm.

Absolutely, IIRC the problem was that testdev did a little bit of
everything... let's see what's the functionality of testdev:

- write (port 0xf1), can be replaced in autotest with:
-device isa-debugcon,iobase=0xf1,chardev=...

- exit code (port 0xf4), see this series:
http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html

- ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:

        u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
        if (rs)
            rs += 16 * 1024 * 1024;
        else
            rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
                  + 1 * 1024 * 1024);

The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.

Paolo

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-03 13:19                 ` [Qemu-devel] " Paolo Bonzini
@ 2012-10-03 13:27                   ` Gleb Natapov
  -1 siblings, 0 replies; 97+ messages in thread
From: Gleb Natapov @ 2012-10-03 13:27 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Lucas Meneghel Rodrigues, kvm, Scott Moser, Jan Kiszka,
	Marcelo Tosatti, Michael Tokarev, qemu-devel, Anthony Liguori,
	Cole Robinson, Andreas Färber

On Wed, Oct 03, 2012 at 03:19:56PM +0200, Paolo Bonzini wrote:
> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
> > Yep, I did send patches with the testdev device present on qemu-kvm.git
> > to qemu.git a while ago, but there were many comments on the review, I
> > ended up not implementing everything that was asked and the patches were
> > archived.
> > 
> > If nobody wants to step up to port it, I'll re-read the original thread
> > and will spin up new patches (and try to go through the end with it).
> > Executing the KVM unittests is something that we can't afford to lose,
> > so I'd say it's important on this last mile effort to get rid of qemu-kvm.
> 
> Absolutely, IIRC the problem was that testdev did a little bit of
> everything... let's see what's the functionality of testdev:
> 
> - write (port 0xf1), can be replaced in autotest with:
> -device isa-debugcon,iobase=0xf1,chardev=...
> 
kvm-unit-tests no longer uses 0xf1 for output. It uses serial.

> - exit code (port 0xf4), see this series:
> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
> 
> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
> 
>         u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>         if (rs)
>             rs += 16 * 1024 * 1024;
>         else
>             rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>                   + 1 * 1024 * 1024);
> 
> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
> 
> Paolo

--
			Gleb.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-03 13:27                   ` Gleb Natapov
  0 siblings, 0 replies; 97+ messages in thread
From: Gleb Natapov @ 2012-10-03 13:27 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Lucas Meneghel Rodrigues, kvm, Scott Moser, Jan Kiszka,
	Marcelo Tosatti, Michael Tokarev, qemu-devel, Anthony Liguori,
	Cole Robinson, Andreas Färber

On Wed, Oct 03, 2012 at 03:19:56PM +0200, Paolo Bonzini wrote:
> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
> > Yep, I did send patches with the testdev device present on qemu-kvm.git
> > to qemu.git a while ago, but there were many comments on the review, I
> > ended up not implementing everything that was asked and the patches were
> > archived.
> > 
> > If nobody wants to step up to port it, I'll re-read the original thread
> > and will spin up new patches (and try to go through the end with it).
> > Executing the KVM unittests is something that we can't afford to lose,
> > so I'd say it's important on this last mile effort to get rid of qemu-kvm.
> 
> Absolutely, IIRC the problem was that testdev did a little bit of
> everything... let's see what's the functionality of testdev:
> 
> - write (port 0xf1), can be replaced in autotest with:
> -device isa-debugcon,iobase=0xf1,chardev=...
> 
kvm-unit-tests no longer uses 0xf1 for output. It uses serial.

> - exit code (port 0xf4), see this series:
> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
> 
> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
> 
>         u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>         if (rs)
>             rs += 16 * 1024 * 1024;
>         else
>             rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>                   + 1 * 1024 * 1024);
> 
> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
> 
> Paolo

--
			Gleb.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-01 16:20                 ` [Qemu-devel] " Anthony Liguori
@ 2012-10-03 20:01                   ` Blue Swirl
  -1 siblings, 0 replies; 97+ messages in thread
From: Blue Swirl @ 2012-10-03 20:01 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: Jan Kiszka, Paolo Bonzini, Marcelo Tosatti, kvm, qemu-devel,
	Cole Robinson, Scott Moser, Andreas Färber, Michael Tokarev,
	Avi Kivity, Aurelien Jarno

On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
>
>> If we built a target for a host that supports KVM in principle, set the
>> default accelerator to KVM as well. This also means the start of QEMU
>> will fail to start if KVM support turns out to be unavailable at
>> runtime.
>>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>  kvm-all.c  |    1 +
>>  kvm-stub.c |    1 +
>>  kvm.h      |    1 +
>>  vl.c       |    4 ++--
>>  4 files changed, 5 insertions(+), 2 deletions(-)
>>
>> diff --git a/kvm-all.c b/kvm-all.c
>> index 92a7137..4d5f86c 100644
>> --- a/kvm-all.c
>> +++ b/kvm-all.c
>> @@ -103,6 +103,7 @@ struct KVMState
>>  #endif
>>  };
>>
>> +bool kvm_configured = true;
>>  KVMState *kvm_state;
>>  bool kvm_kernel_irqchip;
>>  bool kvm_async_interrupts_allowed;
>> diff --git a/kvm-stub.c b/kvm-stub.c
>> index 3c52eb5..86a6451 100644
>> --- a/kvm-stub.c
>> +++ b/kvm-stub.c
>> @@ -17,6 +17,7 @@
>>  #include "gdbstub.h"
>>  #include "kvm.h"
>>
>> +bool kvm_configured;
>>  KVMState *kvm_state;
>>  bool kvm_kernel_irqchip;
>>  bool kvm_async_interrupts_allowed;
>> diff --git a/kvm.h b/kvm.h
>> index dea2998..9936e5f 100644
>> --- a/kvm.h
>> +++ b/kvm.h
>> @@ -22,6 +22,7 @@
>>  #include <linux/kvm.h>
>>  #endif
>>
>> +extern bool kvm_configured;
>>  extern int kvm_allowed;
>>  extern bool kvm_kernel_irqchip;
>>  extern bool kvm_async_interrupts_allowed;
>> diff --git a/vl.c b/vl.c
>> index 8d305ca..f557bd1 100644
>> --- a/vl.c
>> +++ b/vl.c
>> @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
>>      }
>>
>>      if (p == NULL) {
>> -        /* Use the default "accelerator", tcg */
>> -        p = "tcg";
>> +        /* The default accelerator depends on the availability of KVM. */
>> +        p = kvm_configured ? "kvm" : "tcg";
>>      }
>
> How about making this an arch_init() function call and then using a #if
> defined(KVM_CONFIG) in arch_init.c?
>
> I hate to introduce another global variable if we can avoid it...
>
> Otherwise:
>
> Acked-by: Anthony Liguori <aliguori@us.ibm.com>
>
> Blue/Aurelien, any objections?

No, maybe a message could be printed that says that the default has
changed, for a few releases.

>
> Regards,
>
> Anthony Liguori
>
>>
>>      while (!accel_initialised && *p != '\0') {
>> --
>> 1.7.3.4

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-03 20:01                   ` Blue Swirl
  0 siblings, 0 replies; 97+ messages in thread
From: Blue Swirl @ 2012-10-03 20:01 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Avi Kivity, Cole Robinson, Paolo Bonzini,
	Andreas Färber, Aurelien Jarno

On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
> Jan Kiszka <jan.kiszka@siemens.com> writes:
>
>> If we built a target for a host that supports KVM in principle, set the
>> default accelerator to KVM as well. This also means the start of QEMU
>> will fail to start if KVM support turns out to be unavailable at
>> runtime.
>>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>  kvm-all.c  |    1 +
>>  kvm-stub.c |    1 +
>>  kvm.h      |    1 +
>>  vl.c       |    4 ++--
>>  4 files changed, 5 insertions(+), 2 deletions(-)
>>
>> diff --git a/kvm-all.c b/kvm-all.c
>> index 92a7137..4d5f86c 100644
>> --- a/kvm-all.c
>> +++ b/kvm-all.c
>> @@ -103,6 +103,7 @@ struct KVMState
>>  #endif
>>  };
>>
>> +bool kvm_configured = true;
>>  KVMState *kvm_state;
>>  bool kvm_kernel_irqchip;
>>  bool kvm_async_interrupts_allowed;
>> diff --git a/kvm-stub.c b/kvm-stub.c
>> index 3c52eb5..86a6451 100644
>> --- a/kvm-stub.c
>> +++ b/kvm-stub.c
>> @@ -17,6 +17,7 @@
>>  #include "gdbstub.h"
>>  #include "kvm.h"
>>
>> +bool kvm_configured;
>>  KVMState *kvm_state;
>>  bool kvm_kernel_irqchip;
>>  bool kvm_async_interrupts_allowed;
>> diff --git a/kvm.h b/kvm.h
>> index dea2998..9936e5f 100644
>> --- a/kvm.h
>> +++ b/kvm.h
>> @@ -22,6 +22,7 @@
>>  #include <linux/kvm.h>
>>  #endif
>>
>> +extern bool kvm_configured;
>>  extern int kvm_allowed;
>>  extern bool kvm_kernel_irqchip;
>>  extern bool kvm_async_interrupts_allowed;
>> diff --git a/vl.c b/vl.c
>> index 8d305ca..f557bd1 100644
>> --- a/vl.c
>> +++ b/vl.c
>> @@ -2215,8 +2215,8 @@ static int configure_accelerator(void)
>>      }
>>
>>      if (p == NULL) {
>> -        /* Use the default "accelerator", tcg */
>> -        p = "tcg";
>> +        /* The default accelerator depends on the availability of KVM. */
>> +        p = kvm_configured ? "kvm" : "tcg";
>>      }
>
> How about making this an arch_init() function call and then using a #if
> defined(KVM_CONFIG) in arch_init.c?
>
> I hate to introduce another global variable if we can avoid it...
>
> Otherwise:
>
> Acked-by: Anthony Liguori <aliguori@us.ibm.com>
>
> Blue/Aurelien, any objections?

No, maybe a message could be printed that says that the default has
changed, for a few releases.

>
> Regards,
>
> Anthony Liguori
>
>>
>>      while (!accel_initialised && *p != '\0') {
>> --
>> 1.7.3.4

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-03 20:01                   ` [Qemu-devel] " Blue Swirl
@ 2012-10-03 20:26                     ` Peter Maydell
  -1 siblings, 0 replies; 97+ messages in thread
From: Peter Maydell @ 2012-10-03 20:26 UTC (permalink / raw)
  To: Blue Swirl
  Cc: Anthony Liguori, kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Avi Kivity, Cole Robinson,
	Paolo Bonzini, Andreas Färber, Aurelien Jarno

On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>> +        /* The default accelerator depends on the availability of KVM. */
>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>      }

>> Blue/Aurelien, any objections?
>
> No, maybe a message could be printed that says that the default has
> changed, for a few releases.

I've lost track of the conversation, are we currently proposing
the accelerator default to be "kvm" (as per the original patch
you quote here) or "kvm:tcg" ?

I'm not entirely sure which I prefer from an ARM perspective
For some time to come and for a lot of targets (ie any target
CPU except A15), having a default of "kvm" is going to cause
existing working commandlines to stop working. [I expect that
ARM-host qemu binaries will be built with CONFIG_KVM once ARM
KVM support lands, but the same binary will be run on hosts
without virtualization extensions.] On the other hand, perhaps
there just aren't really very many people who run QEMU on
ARM hosts, and so we can ignore them :-)

-- PMM

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-03 20:26                     ` Peter Maydell
  0 siblings, 0 replies; 97+ messages in thread
From: Peter Maydell @ 2012-10-03 20:26 UTC (permalink / raw)
  To: Blue Swirl
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Avi Kivity, Anthony Liguori, Cole Robinson,
	Paolo Bonzini, Andreas Färber, Aurelien Jarno

On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>> +        /* The default accelerator depends on the availability of KVM. */
>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>      }

>> Blue/Aurelien, any objections?
>
> No, maybe a message could be printed that says that the default has
> changed, for a few releases.

I've lost track of the conversation, are we currently proposing
the accelerator default to be "kvm" (as per the original patch
you quote here) or "kvm:tcg" ?

I'm not entirely sure which I prefer from an ARM perspective
For some time to come and for a lot of targets (ie any target
CPU except A15), having a default of "kvm" is going to cause
existing working commandlines to stop working. [I expect that
ARM-host qemu binaries will be built with CONFIG_KVM once ARM
KVM support lands, but the same binary will be run on hosts
without virtualization extensions.] On the other hand, perhaps
there just aren't really very many people who run QEMU on
ARM hosts, and so we can ignore them :-)

-- PMM

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-03 13:19                 ` [Qemu-devel] " Paolo Bonzini
@ 2012-10-04 10:48                   ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-04 10:48 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Lucas Meneghel Rodrigues, Gleb Natapov, kvm, Scott Moser,
	Marcelo Tosatti, Michael Tokarev, qemu-devel, Anthony Liguori,
	Cole Robinson, Andreas Färber

On 2012-10-03 15:19, Paolo Bonzini wrote:
> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>> to qemu.git a while ago, but there were many comments on the review, I
>> ended up not implementing everything that was asked and the patches were
>> archived.
>>
>> If nobody wants to step up to port it, I'll re-read the original thread
>> and will spin up new patches (and try to go through the end with it).
>> Executing the KVM unittests is something that we can't afford to lose,
>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
> 
> Absolutely, IIRC the problem was that testdev did a little bit of
> everything... let's see what's the functionality of testdev:
> 
> - write (port 0xf1), can be replaced in autotest with:
> -device isa-debugcon,iobase=0xf1,chardev=...
> 
> - exit code (port 0xf4), see this series:
> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
> 
> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
> 
>         u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>         if (rs)
>             rs += 16 * 1024 * 1024;
>         else
>             rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>                   + 1 * 1024 * 1024);
> 
> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.

IIRC, one of the biggest problem with testdev was its hack to inject
interrupts.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-04 10:48                   ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-04 10:48 UTC (permalink / raw)
  To: Paolo Bonzini
  Cc: Lucas Meneghel Rodrigues, Gleb Natapov, kvm, Scott Moser,
	Marcelo Tosatti, Michael Tokarev, qemu-devel, Anthony Liguori,
	Cole Robinson, Andreas Färber

On 2012-10-03 15:19, Paolo Bonzini wrote:
> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>> to qemu.git a while ago, but there were many comments on the review, I
>> ended up not implementing everything that was asked and the patches were
>> archived.
>>
>> If nobody wants to step up to port it, I'll re-read the original thread
>> and will spin up new patches (and try to go through the end with it).
>> Executing the KVM unittests is something that we can't afford to lose,
>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
> 
> Absolutely, IIRC the problem was that testdev did a little bit of
> everything... let's see what's the functionality of testdev:
> 
> - write (port 0xf1), can be replaced in autotest with:
> -device isa-debugcon,iobase=0xf1,chardev=...
> 
> - exit code (port 0xf4), see this series:
> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
> 
> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
> 
>         u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>         if (rs)
>             rs += 16 * 1024 * 1024;
>         else
>             rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>                   + 1 * 1024 * 1024);
> 
> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.

IIRC, one of the biggest problem with testdev was its hack to inject
interrupts.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-04 10:48                   ` [Qemu-devel] " Jan Kiszka
@ 2012-10-04 12:10                     ` Lucas Meneghel Rodrigues
  -1 siblings, 0 replies; 97+ messages in thread
From: Lucas Meneghel Rodrigues @ 2012-10-04 12:10 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: Paolo Bonzini, Gleb Natapov, kvm, Scott Moser, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Anthony Liguori, Cole Robinson,
	Andreas Färber

On 10/04/2012 07:48 AM, Jan Kiszka wrote:
> On 2012-10-03 15:19, Paolo Bonzini wrote:
>> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>>> to qemu.git a while ago, but there were many comments on the review, I
>>> ended up not implementing everything that was asked and the patches were
>>> archived.
>>>
>>> If nobody wants to step up to port it, I'll re-read the original thread
>>> and will spin up new patches (and try to go through the end with it).
>>> Executing the KVM unittests is something that we can't afford to lose,
>>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
>>
>> Absolutely, IIRC the problem was that testdev did a little bit of
>> everything... let's see what's the functionality of testdev:
>>
>> - write (port 0xf1), can be replaced in autotest with:
>> -device isa-debugcon,iobase=0xf1,chardev=...
>>
>> - exit code (port 0xf4), see this series:
>> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
>>
>> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
>> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
>>
>>          u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>>          if (rs)
>>              rs += 16 * 1024 * 1024;
>>          else
>>              rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>>                    + 1 * 1024 * 1024);
>>
>> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
>
> IIRC, one of the biggest problem with testdev was its hack to inject
> interrupts.

Jan, I assume this commit helps to fix this, right?

commit b334ec567f1de9a60349991e7b75083d569ddb0a
Author: Jan Kiszka <jan.kiszka@siemens.com>
Date:   Fri Mar 2 10:30:47 2012 +0100

     qemu-kvm: Use upstream kvm-i8259

     Drop the qemu-kvm version in favor of the equivalent upstream
     implementation. This allows to move the i8259 back into the hwlib.

     Note that this also drops the testdev hack and restores proper
     isa_get_irq. If testdev scripts exist that inject > IRQ15, they need
     fixing. Testing for these interrupts on the PIIX3 makes no practical
     sense anyway as those lines are unused.

     Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
     Signed-off-by: Avi Kivity <avi@redhat.com>



^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-04 12:10                     ` Lucas Meneghel Rodrigues
  0 siblings, 0 replies; 97+ messages in thread
From: Lucas Meneghel Rodrigues @ 2012-10-04 12:10 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: Gleb Natapov, kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Anthony Liguori, Cole Robinson, Paolo Bonzini,
	Andreas Färber

On 10/04/2012 07:48 AM, Jan Kiszka wrote:
> On 2012-10-03 15:19, Paolo Bonzini wrote:
>> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>>> to qemu.git a while ago, but there were many comments on the review, I
>>> ended up not implementing everything that was asked and the patches were
>>> archived.
>>>
>>> If nobody wants to step up to port it, I'll re-read the original thread
>>> and will spin up new patches (and try to go through the end with it).
>>> Executing the KVM unittests is something that we can't afford to lose,
>>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
>>
>> Absolutely, IIRC the problem was that testdev did a little bit of
>> everything... let's see what's the functionality of testdev:
>>
>> - write (port 0xf1), can be replaced in autotest with:
>> -device isa-debugcon,iobase=0xf1,chardev=...
>>
>> - exit code (port 0xf4), see this series:
>> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
>>
>> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
>> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
>>
>>          u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>>          if (rs)
>>              rs += 16 * 1024 * 1024;
>>          else
>>              rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>>                    + 1 * 1024 * 1024);
>>
>> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
>
> IIRC, one of the biggest problem with testdev was its hack to inject
> interrupts.

Jan, I assume this commit helps to fix this, right?

commit b334ec567f1de9a60349991e7b75083d569ddb0a
Author: Jan Kiszka <jan.kiszka@siemens.com>
Date:   Fri Mar 2 10:30:47 2012 +0100

     qemu-kvm: Use upstream kvm-i8259

     Drop the qemu-kvm version in favor of the equivalent upstream
     implementation. This allows to move the i8259 back into the hwlib.

     Note that this also drops the testdev hack and restores proper
     isa_get_irq. If testdev scripts exist that inject > IRQ15, they need
     fixing. Testing for these interrupts on the PIIX3 makes no practical
     sense anyway as those lines are unused.

     Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
     Signed-off-by: Avi Kivity <avi@redhat.com>

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-04 12:10                     ` [Qemu-devel] " Lucas Meneghel Rodrigues
@ 2012-10-04 12:27                       ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-04 12:27 UTC (permalink / raw)
  To: Lucas Meneghel Rodrigues
  Cc: Paolo Bonzini, Gleb Natapov, kvm, Scott Moser, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Anthony Liguori, Cole Robinson,
	Andreas Färber

On 2012-10-04 14:10, Lucas Meneghel Rodrigues wrote:
> On 10/04/2012 07:48 AM, Jan Kiszka wrote:
>> On 2012-10-03 15:19, Paolo Bonzini wrote:
>>> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>>>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>>>> to qemu.git a while ago, but there were many comments on the review, I
>>>> ended up not implementing everything that was asked and the patches were
>>>> archived.
>>>>
>>>> If nobody wants to step up to port it, I'll re-read the original thread
>>>> and will spin up new patches (and try to go through the end with it).
>>>> Executing the KVM unittests is something that we can't afford to lose,
>>>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
>>>
>>> Absolutely, IIRC the problem was that testdev did a little bit of
>>> everything... let's see what's the functionality of testdev:
>>>
>>> - write (port 0xf1), can be replaced in autotest with:
>>> -device isa-debugcon,iobase=0xf1,chardev=...
>>>
>>> - exit code (port 0xf4), see this series:
>>> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
>>>
>>> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
>>> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
>>>
>>>          u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>>>          if (rs)
>>>              rs += 16 * 1024 * 1024;
>>>          else
>>>              rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>>>                    + 1 * 1024 * 1024);
>>>
>>> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
>>
>> IIRC, one of the biggest problem with testdev was its hack to inject
>> interrupts.
> 
> Jan, I assume this commit helps to fix this, right?
> 
> commit b334ec567f1de9a60349991e7b75083d569ddb0a
> Author: Jan Kiszka <jan.kiszka@siemens.com>
> Date:   Fri Mar 2 10:30:47 2012 +0100
> 
>      qemu-kvm: Use upstream kvm-i8259
> 
>      Drop the qemu-kvm version in favor of the equivalent upstream
>      implementation. This allows to move the i8259 back into the hwlib.
> 
>      Note that this also drops the testdev hack and restores proper
>      isa_get_irq. If testdev scripts exist that inject > IRQ15, they need
>      fixing. Testing for these interrupts on the PIIX3 makes no practical
>      sense anyway as those lines are unused.
> 
>      Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>      Signed-off-by: Avi Kivity <avi@redhat.com>

Yes, this improved it a lot as we no longer depend on additional
changes. I'm not sure if there was resistance beyond that.

When cleaning up the code: register_ioport_read must be replaced with
the memory API.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-04 12:27                       ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-04 12:27 UTC (permalink / raw)
  To: Lucas Meneghel Rodrigues
  Cc: Gleb Natapov, kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Anthony Liguori, Cole Robinson, Paolo Bonzini,
	Andreas Färber

On 2012-10-04 14:10, Lucas Meneghel Rodrigues wrote:
> On 10/04/2012 07:48 AM, Jan Kiszka wrote:
>> On 2012-10-03 15:19, Paolo Bonzini wrote:
>>> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>>>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>>>> to qemu.git a while ago, but there were many comments on the review, I
>>>> ended up not implementing everything that was asked and the patches were
>>>> archived.
>>>>
>>>> If nobody wants to step up to port it, I'll re-read the original thread
>>>> and will spin up new patches (and try to go through the end with it).
>>>> Executing the KVM unittests is something that we can't afford to lose,
>>>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
>>>
>>> Absolutely, IIRC the problem was that testdev did a little bit of
>>> everything... let's see what's the functionality of testdev:
>>>
>>> - write (port 0xf1), can be replaced in autotest with:
>>> -device isa-debugcon,iobase=0xf1,chardev=...
>>>
>>> - exit code (port 0xf4), see this series:
>>> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
>>>
>>> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
>>> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
>>>
>>>          u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>>>          if (rs)
>>>              rs += 16 * 1024 * 1024;
>>>          else
>>>              rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>>>                    + 1 * 1024 * 1024);
>>>
>>> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
>>
>> IIRC, one of the biggest problem with testdev was its hack to inject
>> interrupts.
> 
> Jan, I assume this commit helps to fix this, right?
> 
> commit b334ec567f1de9a60349991e7b75083d569ddb0a
> Author: Jan Kiszka <jan.kiszka@siemens.com>
> Date:   Fri Mar 2 10:30:47 2012 +0100
> 
>      qemu-kvm: Use upstream kvm-i8259
> 
>      Drop the qemu-kvm version in favor of the equivalent upstream
>      implementation. This allows to move the i8259 back into the hwlib.
> 
>      Note that this also drops the testdev hack and restores proper
>      isa_get_irq. If testdev scripts exist that inject > IRQ15, they need
>      fixing. Testing for these interrupts on the PIIX3 makes no practical
>      sense anyway as those lines are unused.
> 
>      Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>      Signed-off-by: Avi Kivity <avi@redhat.com>

Yes, this improved it a lot as we no longer depend on additional
changes. I'm not sure if there was resistance beyond that.

When cleaning up the code: register_ioport_read must be replaced with
the memory API.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-04 12:27                       ` [Qemu-devel] " Jan Kiszka
@ 2012-10-04 17:21                         ` Lucas Meneghel Rodrigues
  -1 siblings, 0 replies; 97+ messages in thread
From: Lucas Meneghel Rodrigues @ 2012-10-04 17:21 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: Paolo Bonzini, Gleb Natapov, kvm, Scott Moser, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Anthony Liguori, Cole Robinson,
	Andreas Färber

On 10/04/2012 09:27 AM, Jan Kiszka wrote:
> On 2012-10-04 14:10, Lucas Meneghel Rodrigues wrote:
>> On 10/04/2012 07:48 AM, Jan Kiszka wrote:
>>> On 2012-10-03 15:19, Paolo Bonzini wrote:
>>>> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>>>>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>>>>> to qemu.git a while ago, but there were many comments on the review, I
>>>>> ended up not implementing everything that was asked and the patches were
>>>>> archived.
>>>>>
>>>>> If nobody wants to step up to port it, I'll re-read the original thread
>>>>> and will spin up new patches (and try to go through the end with it).
>>>>> Executing the KVM unittests is something that we can't afford to lose,
>>>>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
>>>>
>>>> Absolutely, IIRC the problem was that testdev did a little bit of
>>>> everything... let's see what's the functionality of testdev:
>>>>
>>>> - write (port 0xf1), can be replaced in autotest with:
>>>> -device isa-debugcon,iobase=0xf1,chardev=...
>>>>
>>>> - exit code (port 0xf4), see this series:
>>>> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
>>>>
>>>> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
>>>> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
>>>>
>>>>           u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>>>>           if (rs)
>>>>               rs += 16 * 1024 * 1024;
>>>>           else
>>>>               rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>>>>                     + 1 * 1024 * 1024);
>>>>
>>>> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
>>>
>>> IIRC, one of the biggest problem with testdev was its hack to inject
>>> interrupts.
>>
>> Jan, I assume this commit helps to fix this, right?
>>
>> commit b334ec567f1de9a60349991e7b75083d569ddb0a
>> Author: Jan Kiszka <jan.kiszka@siemens.com>
>> Date:   Fri Mar 2 10:30:47 2012 +0100
>>
>>       qemu-kvm: Use upstream kvm-i8259
>>
>>       Drop the qemu-kvm version in favor of the equivalent upstream
>>       implementation. This allows to move the i8259 back into the hwlib.
>>
>>       Note that this also drops the testdev hack and restores proper
>>       isa_get_irq. If testdev scripts exist that inject > IRQ15, they need
>>       fixing. Testing for these interrupts on the PIIX3 makes no practical
>>       sense anyway as those lines are unused.
>>
>>       Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>>       Signed-off-by: Avi Kivity <avi@redhat.com>
>
> Yes, this improved it a lot as we no longer depend on additional
> changes. I'm not sure if there was resistance beyond that.
>
> When cleaning up the code: register_ioport_read must be replaced with
> the memory API.

I did look at the MemoryRegionOps/memory_region_init_io and still did 
not figure out how to port things. I'll send a v2 addressing all the 
comments made so far but this one, just to see if people are OK with the 
direction of the full patch, then if you could give me some pointers of 
how to do this conversion, it'd be great.


^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-04 17:21                         ` Lucas Meneghel Rodrigues
  0 siblings, 0 replies; 97+ messages in thread
From: Lucas Meneghel Rodrigues @ 2012-10-04 17:21 UTC (permalink / raw)
  To: Jan Kiszka
  Cc: Gleb Natapov, kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Anthony Liguori, Cole Robinson, Paolo Bonzini,
	Andreas Färber

On 10/04/2012 09:27 AM, Jan Kiszka wrote:
> On 2012-10-04 14:10, Lucas Meneghel Rodrigues wrote:
>> On 10/04/2012 07:48 AM, Jan Kiszka wrote:
>>> On 2012-10-03 15:19, Paolo Bonzini wrote:
>>>> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>>>>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>>>>> to qemu.git a while ago, but there were many comments on the review, I
>>>>> ended up not implementing everything that was asked and the patches were
>>>>> archived.
>>>>>
>>>>> If nobody wants to step up to port it, I'll re-read the original thread
>>>>> and will spin up new patches (and try to go through the end with it).
>>>>> Executing the KVM unittests is something that we can't afford to lose,
>>>>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
>>>>
>>>> Absolutely, IIRC the problem was that testdev did a little bit of
>>>> everything... let's see what's the functionality of testdev:
>>>>
>>>> - write (port 0xf1), can be replaced in autotest with:
>>>> -device isa-debugcon,iobase=0xf1,chardev=...
>>>>
>>>> - exit code (port 0xf4), see this series:
>>>> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
>>>>
>>>> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
>>>> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
>>>>
>>>>           u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>>>>           if (rs)
>>>>               rs += 16 * 1024 * 1024;
>>>>           else
>>>>               rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>>>>                     + 1 * 1024 * 1024);
>>>>
>>>> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
>>>
>>> IIRC, one of the biggest problem with testdev was its hack to inject
>>> interrupts.
>>
>> Jan, I assume this commit helps to fix this, right?
>>
>> commit b334ec567f1de9a60349991e7b75083d569ddb0a
>> Author: Jan Kiszka <jan.kiszka@siemens.com>
>> Date:   Fri Mar 2 10:30:47 2012 +0100
>>
>>       qemu-kvm: Use upstream kvm-i8259
>>
>>       Drop the qemu-kvm version in favor of the equivalent upstream
>>       implementation. This allows to move the i8259 back into the hwlib.
>>
>>       Note that this also drops the testdev hack and restores proper
>>       isa_get_irq. If testdev scripts exist that inject > IRQ15, they need
>>       fixing. Testing for these interrupts on the PIIX3 makes no practical
>>       sense anyway as those lines are unused.
>>
>>       Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>>       Signed-off-by: Avi Kivity <avi@redhat.com>
>
> Yes, this improved it a lot as we no longer depend on additional
> changes. I'm not sure if there was resistance beyond that.
>
> When cleaning up the code: register_ioport_read must be replaced with
> the memory API.

I did look at the MemoryRegionOps/memory_region_init_io and still did 
not figure out how to port things. I'll send a v2 addressing all the 
comments made so far but this one, just to see if people are OK with the 
direction of the full patch, then if you could give me some pointers of 
how to do this conversion, it'd be great.

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: qemu-kvm: remove "boot=on|off" drive parameter compatibility
  2012-10-04 17:21                         ` [Qemu-devel] " Lucas Meneghel Rodrigues
@ 2012-10-04 17:24                           ` Jan Kiszka
  -1 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-04 17:24 UTC (permalink / raw)
  To: Lucas Meneghel Rodrigues
  Cc: Paolo Bonzini, Gleb Natapov, kvm, Scott Moser, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Anthony Liguori, Cole Robinson,
	Andreas Färber

On 2012-10-04 19:21, Lucas Meneghel Rodrigues wrote:
> On 10/04/2012 09:27 AM, Jan Kiszka wrote:
>> On 2012-10-04 14:10, Lucas Meneghel Rodrigues wrote:
>>> On 10/04/2012 07:48 AM, Jan Kiszka wrote:
>>>> On 2012-10-03 15:19, Paolo Bonzini wrote:
>>>>> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>>>>>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>>>>>> to qemu.git a while ago, but there were many comments on the review, I
>>>>>> ended up not implementing everything that was asked and the patches were
>>>>>> archived.
>>>>>>
>>>>>> If nobody wants to step up to port it, I'll re-read the original thread
>>>>>> and will spin up new patches (and try to go through the end with it).
>>>>>> Executing the KVM unittests is something that we can't afford to lose,
>>>>>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
>>>>>
>>>>> Absolutely, IIRC the problem was that testdev did a little bit of
>>>>> everything... let's see what's the functionality of testdev:
>>>>>
>>>>> - write (port 0xf1), can be replaced in autotest with:
>>>>> -device isa-debugcon,iobase=0xf1,chardev=...
>>>>>
>>>>> - exit code (port 0xf4), see this series:
>>>>> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
>>>>>
>>>>> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
>>>>> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
>>>>>
>>>>>           u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>>>>>           if (rs)
>>>>>               rs += 16 * 1024 * 1024;
>>>>>           else
>>>>>               rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>>>>>                     + 1 * 1024 * 1024);
>>>>>
>>>>> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
>>>>
>>>> IIRC, one of the biggest problem with testdev was its hack to inject
>>>> interrupts.
>>>
>>> Jan, I assume this commit helps to fix this, right?
>>>
>>> commit b334ec567f1de9a60349991e7b75083d569ddb0a
>>> Author: Jan Kiszka <jan.kiszka@siemens.com>
>>> Date:   Fri Mar 2 10:30:47 2012 +0100
>>>
>>>       qemu-kvm: Use upstream kvm-i8259
>>>
>>>       Drop the qemu-kvm version in favor of the equivalent upstream
>>>       implementation. This allows to move the i8259 back into the hwlib.
>>>
>>>       Note that this also drops the testdev hack and restores proper
>>>       isa_get_irq. If testdev scripts exist that inject > IRQ15, they need
>>>       fixing. Testing for these interrupts on the PIIX3 makes no practical
>>>       sense anyway as those lines are unused.
>>>
>>>       Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>>>       Signed-off-by: Avi Kivity <avi@redhat.com>
>>
>> Yes, this improved it a lot as we no longer depend on additional
>> changes. I'm not sure if there was resistance beyond that.
>>
>> When cleaning up the code: register_ioport_read must be replaced with
>> the memory API.
> 
> I did look at the MemoryRegionOps/memory_region_init_io and still did 
> not figure out how to port things. I'll send a v2 addressing all the 
> comments made so far but this one, just to see if people are OK with the 
> direction of the full patch, then if you could give me some pointers of 
> how to do this conversion, it'd be great.
> 

See e.g. http://thread.gmane.org/gmane.comp.emulators.qemu/171217

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] qemu-kvm: remove "boot=on|off" drive parameter compatibility
@ 2012-10-04 17:24                           ` Jan Kiszka
  0 siblings, 0 replies; 97+ messages in thread
From: Jan Kiszka @ 2012-10-04 17:24 UTC (permalink / raw)
  To: Lucas Meneghel Rodrigues
  Cc: Gleb Natapov, kvm, Scott Moser, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Anthony Liguori, Cole Robinson, Paolo Bonzini,
	Andreas Färber

On 2012-10-04 19:21, Lucas Meneghel Rodrigues wrote:
> On 10/04/2012 09:27 AM, Jan Kiszka wrote:
>> On 2012-10-04 14:10, Lucas Meneghel Rodrigues wrote:
>>> On 10/04/2012 07:48 AM, Jan Kiszka wrote:
>>>> On 2012-10-03 15:19, Paolo Bonzini wrote:
>>>>> Il 03/10/2012 12:57, Lucas Meneghel Rodrigues ha scritto:
>>>>>> Yep, I did send patches with the testdev device present on qemu-kvm.git
>>>>>> to qemu.git a while ago, but there were many comments on the review, I
>>>>>> ended up not implementing everything that was asked and the patches were
>>>>>> archived.
>>>>>>
>>>>>> If nobody wants to step up to port it, I'll re-read the original thread
>>>>>> and will spin up new patches (and try to go through the end with it).
>>>>>> Executing the KVM unittests is something that we can't afford to lose,
>>>>>> so I'd say it's important on this last mile effort to get rid of qemu-kvm.
>>>>>
>>>>> Absolutely, IIRC the problem was that testdev did a little bit of
>>>>> everything... let's see what's the functionality of testdev:
>>>>>
>>>>> - write (port 0xf1), can be replaced in autotest with:
>>>>> -device isa-debugcon,iobase=0xf1,chardev=...
>>>>>
>>>>> - exit code (port 0xf4), see this series:
>>>>> http://lists.gnu.org/archive/html/qemu-devel/2012-07/msg00818.html
>>>>>
>>>>> - ram size (port 0xd1).  If we can also patch kvm-unittests, the memory
>>>>> is available in the CMOS or in fwcfg.  Here is the SeaBIOS code:
>>>>>
>>>>>           u32 rs = ((inb_cmos(0x34) << 16) | (inb_cmos(0x35) << 24));
>>>>>           if (rs)
>>>>>               rs += 16 * 1024 * 1024;
>>>>>           else
>>>>>               rs = (((inb_cmos(0x30) << 10) | (inb_cmos(0x31) << 18))
>>>>>                     + 1 * 1024 * 1024);
>>>>>
>>>>> The rest (ports 0xe0..0xe7, 0x2000..0x2017, MMIO) can be left in testdev.
>>>>
>>>> IIRC, one of the biggest problem with testdev was its hack to inject
>>>> interrupts.
>>>
>>> Jan, I assume this commit helps to fix this, right?
>>>
>>> commit b334ec567f1de9a60349991e7b75083d569ddb0a
>>> Author: Jan Kiszka <jan.kiszka@siemens.com>
>>> Date:   Fri Mar 2 10:30:47 2012 +0100
>>>
>>>       qemu-kvm: Use upstream kvm-i8259
>>>
>>>       Drop the qemu-kvm version in favor of the equivalent upstream
>>>       implementation. This allows to move the i8259 back into the hwlib.
>>>
>>>       Note that this also drops the testdev hack and restores proper
>>>       isa_get_irq. If testdev scripts exist that inject > IRQ15, they need
>>>       fixing. Testing for these interrupts on the PIIX3 makes no practical
>>>       sense anyway as those lines are unused.
>>>
>>>       Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>>>       Signed-off-by: Avi Kivity <avi@redhat.com>
>>
>> Yes, this improved it a lot as we no longer depend on additional
>> changes. I'm not sure if there was resistance beyond that.
>>
>> When cleaning up the code: register_ioport_read must be replaced with
>> the memory API.
> 
> I did look at the MemoryRegionOps/memory_region_init_io and still did 
> not figure out how to port things. I'll send a v2 addressing all the 
> comments made so far but this one, just to see if people are OK with the 
> direction of the full patch, then if you could give me some pointers of 
> how to do this conversion, it'd be great.
> 

See e.g. http://thread.gmane.org/gmane.comp.emulators.qemu/171217

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-03 20:26                     ` Peter Maydell
@ 2012-10-05  1:15                       ` Alexander Graf
  -1 siblings, 0 replies; 97+ messages in thread
From: Alexander Graf @ 2012-10-05  1:15 UTC (permalink / raw)
  To: Peter Maydell
  Cc: Blue Swirl, kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Avi Kivity, Anthony Liguori,
	Cole Robinson, Paolo Bonzini, Andreas Färber,
	Aurelien Jarno


On 03.10.2012, at 22:26, Peter Maydell wrote:

> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>     }
> 
>>> Blue/Aurelien, any objections?
>> 
>> No, maybe a message could be printed that says that the default has
>> changed, for a few releases.
> 
> I've lost track of the conversation, are we currently proposing
> the accelerator default to be "kvm" (as per the original patch
> you quote here) or "kvm:tcg" ?
> 
> I'm not entirely sure which I prefer from an ARM perspective
> For some time to come and for a lot of targets (ie any target
> CPU except A15), having a default of "kvm" is going to cause
> existing working commandlines to stop working. [I expect that
> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
> KVM support lands, but the same binary will be run on hosts
> without virtualization extensions.] On the other hand, perhaps
> there just aren't really very many people who run QEMU on
> ARM hosts, and so we can ignore them :-)

We get similar problems on PPC. Take the following example:

  $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic

That command line would work just fine if you run it on a G5 today. However, if we switch to accel=kvm:tcg, it will stop working, because kvm on the G5 can not virtualize an e500 CPU.

I don't know any good way around that one either the way the code is layered today. We only know the type of CPU we want to create after we made the decision whether we do KVM or not.


Alex


^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-05  1:15                       ` Alexander Graf
  0 siblings, 0 replies; 97+ messages in thread
From: Alexander Graf @ 2012-10-05  1:15 UTC (permalink / raw)
  To: Peter Maydell
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Blue Swirl, Avi Kivity, Anthony Liguori,
	Cole Robinson, Paolo Bonzini, Andreas Färber,
	Aurelien Jarno


On 03.10.2012, at 22:26, Peter Maydell wrote:

> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>     }
> 
>>> Blue/Aurelien, any objections?
>> 
>> No, maybe a message could be printed that says that the default has
>> changed, for a few releases.
> 
> I've lost track of the conversation, are we currently proposing
> the accelerator default to be "kvm" (as per the original patch
> you quote here) or "kvm:tcg" ?
> 
> I'm not entirely sure which I prefer from an ARM perspective
> For some time to come and for a lot of targets (ie any target
> CPU except A15), having a default of "kvm" is going to cause
> existing working commandlines to stop working. [I expect that
> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
> KVM support lands, but the same binary will be run on hosts
> without virtualization extensions.] On the other hand, perhaps
> there just aren't really very many people who run QEMU on
> ARM hosts, and so we can ignore them :-)

We get similar problems on PPC. Take the following example:

  $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic

That command line would work just fine if you run it on a G5 today. However, if we switch to accel=kvm:tcg, it will stop working, because kvm on the G5 can not virtualize an e500 CPU.

I don't know any good way around that one either the way the code is layered today. We only know the type of CPU we want to create after we made the decision whether we do KVM or not.


Alex

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-05  1:15                       ` Alexander Graf
@ 2012-10-05  2:17                         ` Anthony Liguori
  -1 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-05  2:17 UTC (permalink / raw)
  To: Alexander Graf, Peter Maydell
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Blue Swirl, Avi Kivity, Cole Robinson, Paolo Bonzini,
	Andreas Färber, Aurelien Jarno

Alexander Graf <agraf@suse.de> writes:

> On 03.10.2012, at 22:26, Peter Maydell wrote:
>
>> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>>     }
>> 
>>>> Blue/Aurelien, any objections?
>>> 
>>> No, maybe a message could be printed that says that the default has
>>> changed, for a few releases.
>> 
>> I've lost track of the conversation, are we currently proposing
>> the accelerator default to be "kvm" (as per the original patch
>> you quote here) or "kvm:tcg" ?
>> 
>> I'm not entirely sure which I prefer from an ARM perspective
>> For some time to come and for a lot of targets (ie any target
>> CPU except A15), having a default of "kvm" is going to cause
>> existing working commandlines to stop working. [I expect that
>> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
>> KVM support lands, but the same binary will be run on hosts
>> without virtualization extensions.] On the other hand, perhaps
>> there just aren't really very many people who run QEMU on
>> ARM hosts, and so we can ignore them :-)
>
> We get similar problems on PPC. Take the following example:
>
>   $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic

But do you really expect people to do this?  I have to believe that
people running on PPC hardware and running qemu-system-ppc most likely
want to do KVM...

Kernel development seems unlikely...  The folks that I know doing PPC
kernel development with QEMU still qemu-system-ppc on x86.

Regards,

Anthony Liguori

>
> That command line would work just fine if you run it on a G5 today. However, if we switch to accel=kvm:tcg, it will stop working, because kvm on the G5 can not virtualize an e500 CPU.
>
> I don't know any good way around that one either the way the code is layered today. We only know the type of CPU we want to create after we made the decision whether we do KVM or not.
>
>
> Alex

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-05  2:17                         ` Anthony Liguori
  0 siblings, 0 replies; 97+ messages in thread
From: Anthony Liguori @ 2012-10-05  2:17 UTC (permalink / raw)
  To: Alexander Graf, Peter Maydell
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Blue Swirl, Avi Kivity, Cole Robinson, Paolo Bonzini,
	Andreas Färber, Aurelien Jarno

Alexander Graf <agraf@suse.de> writes:

> On 03.10.2012, at 22:26, Peter Maydell wrote:
>
>> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>>     }
>> 
>>>> Blue/Aurelien, any objections?
>>> 
>>> No, maybe a message could be printed that says that the default has
>>> changed, for a few releases.
>> 
>> I've lost track of the conversation, are we currently proposing
>> the accelerator default to be "kvm" (as per the original patch
>> you quote here) or "kvm:tcg" ?
>> 
>> I'm not entirely sure which I prefer from an ARM perspective
>> For some time to come and for a lot of targets (ie any target
>> CPU except A15), having a default of "kvm" is going to cause
>> existing working commandlines to stop working. [I expect that
>> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
>> KVM support lands, but the same binary will be run on hosts
>> without virtualization extensions.] On the other hand, perhaps
>> there just aren't really very many people who run QEMU on
>> ARM hosts, and so we can ignore them :-)
>
> We get similar problems on PPC. Take the following example:
>
>   $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic

But do you really expect people to do this?  I have to believe that
people running on PPC hardware and running qemu-system-ppc most likely
want to do KVM...

Kernel development seems unlikely...  The folks that I know doing PPC
kernel development with QEMU still qemu-system-ppc on x86.

Regards,

Anthony Liguori

>
> That command line would work just fine if you run it on a G5 today. However, if we switch to accel=kvm:tcg, it will stop working, because kvm on the G5 can not virtualize an e500 CPU.
>
> I don't know any good way around that one either the way the code is layered today. We only know the type of CPU we want to create after we made the decision whether we do KVM or not.
>
>
> Alex

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-05  2:17                         ` [Qemu-devel] " Anthony Liguori
@ 2012-10-05  2:24                           ` Alexander Graf
  -1 siblings, 0 replies; 97+ messages in thread
From: Alexander Graf @ 2012-10-05  2:24 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: Peter Maydell, Blue Swirl, kvm, Scott Moser, Jan Kiszka,
	Marcelo Tosatti, Michael Tokarev, qemu-devel, Avi Kivity,
	Cole Robinson, Paolo Bonzini, Andreas Färber,
	Aurelien Jarno


On 05.10.2012, at 04:17, Anthony Liguori wrote:

> Alexander Graf <agraf@suse.de> writes:
> 
>> On 03.10.2012, at 22:26, Peter Maydell wrote:
>> 
>>> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>>>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>>>    }
>>> 
>>>>> Blue/Aurelien, any objections?
>>>> 
>>>> No, maybe a message could be printed that says that the default has
>>>> changed, for a few releases.
>>> 
>>> I've lost track of the conversation, are we currently proposing
>>> the accelerator default to be "kvm" (as per the original patch
>>> you quote here) or "kvm:tcg" ?
>>> 
>>> I'm not entirely sure which I prefer from an ARM perspective
>>> For some time to come and for a lot of targets (ie any target
>>> CPU except A15), having a default of "kvm" is going to cause
>>> existing working commandlines to stop working. [I expect that
>>> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
>>> KVM support lands, but the same binary will be run on hosts
>>> without virtualization extensions.] On the other hand, perhaps
>>> there just aren't really very many people who run QEMU on
>>> ARM hosts, and so we can ignore them :-)
>> 
>> We get similar problems on PPC. Take the following example:
>> 
>>  $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic
> 
> But do you really expect people to do this?  I have to believe that
> people running on PPC hardware and running qemu-system-ppc most likely
> want to do KVM...

Sure. But we wouldn't be able to even tell them what went wrong, as we don't have a negotiation mechanism right now that could tell user space "hey, the CPU you selected is unknown to me".

However, if during cpu init we could add such a check and then fall back to tcg mode if accel=kvm:tcg with a warning, that'd be nice user experience.

We could do the same for ARM. If you do -M beagle on an A15 KVM enabled machine, you would still be able to do so, but KVM tells you it can't emulate an A8 right now. And if in the future KVM learns how to expose an A8 on A15, we could just not bail out and things would magically work.

Apart from that, I like the idea of kvm:tcg with a warning as the default for qemu. We should still have a qemu-kvm binary in the distro that does accel=kvm so people don't accidentally fall back to tcg mode.


Alex


^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-05  2:24                           ` Alexander Graf
  0 siblings, 0 replies; 97+ messages in thread
From: Alexander Graf @ 2012-10-05  2:24 UTC (permalink / raw)
  To: Anthony Liguori
  Cc: Peter Maydell, kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Blue Swirl, Avi Kivity,
	Cole Robinson, Paolo Bonzini, Andreas Färber,
	Aurelien Jarno


On 05.10.2012, at 04:17, Anthony Liguori wrote:

> Alexander Graf <agraf@suse.de> writes:
> 
>> On 03.10.2012, at 22:26, Peter Maydell wrote:
>> 
>>> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>>>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>>>    }
>>> 
>>>>> Blue/Aurelien, any objections?
>>>> 
>>>> No, maybe a message could be printed that says that the default has
>>>> changed, for a few releases.
>>> 
>>> I've lost track of the conversation, are we currently proposing
>>> the accelerator default to be "kvm" (as per the original patch
>>> you quote here) or "kvm:tcg" ?
>>> 
>>> I'm not entirely sure which I prefer from an ARM perspective
>>> For some time to come and for a lot of targets (ie any target
>>> CPU except A15), having a default of "kvm" is going to cause
>>> existing working commandlines to stop working. [I expect that
>>> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
>>> KVM support lands, but the same binary will be run on hosts
>>> without virtualization extensions.] On the other hand, perhaps
>>> there just aren't really very many people who run QEMU on
>>> ARM hosts, and so we can ignore them :-)
>> 
>> We get similar problems on PPC. Take the following example:
>> 
>>  $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic
> 
> But do you really expect people to do this?  I have to believe that
> people running on PPC hardware and running qemu-system-ppc most likely
> want to do KVM...

Sure. But we wouldn't be able to even tell them what went wrong, as we don't have a negotiation mechanism right now that could tell user space "hey, the CPU you selected is unknown to me".

However, if during cpu init we could add such a check and then fall back to tcg mode if accel=kvm:tcg with a warning, that'd be nice user experience.

We could do the same for ARM. If you do -M beagle on an A15 KVM enabled machine, you would still be able to do so, but KVM tells you it can't emulate an A8 right now. And if in the future KVM learns how to expose an A8 on A15, we could just not bail out and things would magically work.

Apart from that, I like the idea of kvm:tcg with a warning as the default for qemu. We should still have a qemu-kvm binary in the distro that does accel=kvm so people don't accidentally fall back to tcg mode.


Alex

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-05  2:24                           ` Alexander Graf
@ 2012-10-05  8:15                             ` Peter Maydell
  -1 siblings, 0 replies; 97+ messages in thread
From: Peter Maydell @ 2012-10-05  8:15 UTC (permalink / raw)
  To: Alexander Graf
  Cc: Anthony Liguori, Blue Swirl, kvm, Scott Moser, Jan Kiszka,
	Marcelo Tosatti, Michael Tokarev, qemu-devel, Avi Kivity,
	Cole Robinson, Paolo Bonzini, Andreas Färber,
	Aurelien Jarno

On 5 October 2012 03:24, Alexander Graf <agraf@suse.de> wrote:
> On 05.10.2012, at 04:17, Anthony Liguori wrote:
>> Alexander Graf <agraf@suse.de> writes:
>>> We get similar problems on PPC. Take the following example:
>>>
>>>  $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic
>>
>> But do you really expect people to do this?  I have to believe that
>> people running on PPC hardware and running qemu-system-ppc most likely
>> want to do KVM...
>
> Sure. But we wouldn't be able to even tell them what went wrong,
> as we don't have a negotiation mechanism right now that could tell
> user space "hey, the CPU you selected is unknown to me".

On ARM we will at least be able to say what happened, because
our kvm_arch_init_vcpu() will fail (when we try the ioctl to
tell the kernel "be this kind of CPU") and we can print a
message there. However QEMU as a whole doesn't have any way of
falling back to TCG at that point so it just bails out.

-- PMM

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-05  8:15                             ` Peter Maydell
  0 siblings, 0 replies; 97+ messages in thread
From: Peter Maydell @ 2012-10-05  8:15 UTC (permalink / raw)
  To: Alexander Graf
  Cc: kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti, Michael Tokarev,
	qemu-devel, Blue Swirl, Avi Kivity, Anthony Liguori,
	Cole Robinson, Paolo Bonzini, Andreas Färber,
	Aurelien Jarno

On 5 October 2012 03:24, Alexander Graf <agraf@suse.de> wrote:
> On 05.10.2012, at 04:17, Anthony Liguori wrote:
>> Alexander Graf <agraf@suse.de> writes:
>>> We get similar problems on PPC. Take the following example:
>>>
>>>  $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic
>>
>> But do you really expect people to do this?  I have to believe that
>> people running on PPC hardware and running qemu-system-ppc most likely
>> want to do KVM...
>
> Sure. But we wouldn't be able to even tell them what went wrong,
> as we don't have a negotiation mechanism right now that could tell
> user space "hey, the CPU you selected is unknown to me".

On ARM we will at least be able to say what happened, because
our kvm_arch_init_vcpu() will fail (when we try the ioctl to
tell the kernel "be this kind of CPU") and we can print a
message there. However QEMU as a whole doesn't have any way of
falling back to TCG at that point so it just bails out.

-- PMM

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-05  2:24                           ` Alexander Graf
@ 2012-10-08 14:03                             ` Andreas Färber
  -1 siblings, 0 replies; 97+ messages in thread
From: Andreas Färber @ 2012-10-08 14:03 UTC (permalink / raw)
  To: Alexander Graf
  Cc: Anthony Liguori, Peter Maydell, Blue Swirl, kvm, Scott Moser,
	Jan Kiszka, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Avi Kivity, Cole Robinson, Paolo Bonzini, Aurelien Jarno

Am 05.10.2012 04:24, schrieb Alexander Graf:
> 
> On 05.10.2012, at 04:17, Anthony Liguori wrote:
> 
>> Alexander Graf <agraf@suse.de> writes:
>>
>>> On 03.10.2012, at 22:26, Peter Maydell wrote:
>>>
>>>> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>>>>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>>>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>>>>    }
>>>>
>>>>>> Blue/Aurelien, any objections?
>>>>>
>>>>> No, maybe a message could be printed that says that the default has
>>>>> changed, for a few releases.
>>>>
>>>> I've lost track of the conversation, are we currently proposing
>>>> the accelerator default to be "kvm" (as per the original patch
>>>> you quote here) or "kvm:tcg" ?
>>>>
>>>> I'm not entirely sure which I prefer from an ARM perspective
>>>> For some time to come and for a lot of targets (ie any target
>>>> CPU except A15), having a default of "kvm" is going to cause
>>>> existing working commandlines to stop working. [I expect that
>>>> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
>>>> KVM support lands, but the same binary will be run on hosts
>>>> without virtualization extensions.] On the other hand, perhaps
>>>> there just aren't really very many people who run QEMU on
>>>> ARM hosts, and so we can ignore them :-)
>>>
>>> We get similar problems on PPC. Take the following example:
>>>
>>>  $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic
>>
>> But do you really expect people to do this?  I have to believe that
>> people running on PPC hardware and running qemu-system-ppc most likely
>> want to do KVM...
> 
> Sure. But we wouldn't be able to even tell them what went wrong, as we don't have a negotiation mechanism right now that could tell user space "hey, the CPU you selected is unknown to me".

Would it help to split out the cpu_model -> CPUClass lookup from
cpu_ppc_init() to invoke a hook or inquire a field indicating KVM support?

Andreas

> 
> However, if during cpu init we could add such a check and then fall back to tcg mode if accel=kvm:tcg with a warning, that'd be nice user experience.
> 
> We could do the same for ARM. If you do -M beagle on an A15 KVM enabled machine, you would still be able to do so, but KVM tells you it can't emulate an A8 right now. And if in the future KVM learns how to expose an A8 on A15, we could just not bail out and things would magically work.
> 
> Apart from that, I like the idea of kvm:tcg with a warning as the default for qemu. We should still have a qemu-kvm binary in the distro that does accel=kvm so people don't accidentally fall back to tcg mode.
> 
> 
> Alex
> 


-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-08 14:03                             ` Andreas Färber
  0 siblings, 0 replies; 97+ messages in thread
From: Andreas Färber @ 2012-10-08 14:03 UTC (permalink / raw)
  To: Alexander Graf
  Cc: Peter Maydell, kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Blue Swirl, Avi Kivity,
	Anthony Liguori, Cole Robinson, Paolo Bonzini, Aurelien Jarno

Am 05.10.2012 04:24, schrieb Alexander Graf:
> 
> On 05.10.2012, at 04:17, Anthony Liguori wrote:
> 
>> Alexander Graf <agraf@suse.de> writes:
>>
>>> On 03.10.2012, at 22:26, Peter Maydell wrote:
>>>
>>>> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>>>>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>>>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>>>>    }
>>>>
>>>>>> Blue/Aurelien, any objections?
>>>>>
>>>>> No, maybe a message could be printed that says that the default has
>>>>> changed, for a few releases.
>>>>
>>>> I've lost track of the conversation, are we currently proposing
>>>> the accelerator default to be "kvm" (as per the original patch
>>>> you quote here) or "kvm:tcg" ?
>>>>
>>>> I'm not entirely sure which I prefer from an ARM perspective
>>>> For some time to come and for a lot of targets (ie any target
>>>> CPU except A15), having a default of "kvm" is going to cause
>>>> existing working commandlines to stop working. [I expect that
>>>> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
>>>> KVM support lands, but the same binary will be run on hosts
>>>> without virtualization extensions.] On the other hand, perhaps
>>>> there just aren't really very many people who run QEMU on
>>>> ARM hosts, and so we can ignore them :-)
>>>
>>> We get similar problems on PPC. Take the following example:
>>>
>>>  $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic
>>
>> But do you really expect people to do this?  I have to believe that
>> people running on PPC hardware and running qemu-system-ppc most likely
>> want to do KVM...
> 
> Sure. But we wouldn't be able to even tell them what went wrong, as we don't have a negotiation mechanism right now that could tell user space "hey, the CPU you selected is unknown to me".

Would it help to split out the cpu_model -> CPUClass lookup from
cpu_ppc_init() to invoke a hook or inquire a field indicating KVM support?

Andreas

> 
> However, if during cpu init we could add such a check and then fall back to tcg mode if accel=kvm:tcg with a warning, that'd be nice user experience.
> 
> We could do the same for ARM. If you do -M beagle on an A15 KVM enabled machine, you would still be able to do so, but KVM tells you it can't emulate an A8 right now. And if in the future KVM learns how to expose an A8 on A15, we could just not bail out and things would magically work.
> 
> Apart from that, I like the idea of kvm:tcg with a warning as the default for qemu. We should still have a qemu-kvm binary in the distro that does accel=kvm so people don't accidentally fall back to tcg mode.
> 
> 
> Alex
> 


-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
  2012-10-08 14:03                             ` Andreas Färber
@ 2012-10-08 14:08                               ` Alexander Graf
  -1 siblings, 0 replies; 97+ messages in thread
From: Alexander Graf @ 2012-10-08 14:08 UTC (permalink / raw)
  To: Andreas Färber
  Cc: Anthony Liguori, Peter Maydell, Blue Swirl, kvm, Scott Moser,
	Jan Kiszka, Marcelo Tosatti, Michael Tokarev, qemu-devel,
	Avi Kivity, Cole Robinson, Paolo Bonzini, Aurelien Jarno


On 08.10.2012, at 16:03, Andreas Färber wrote:

> Am 05.10.2012 04:24, schrieb Alexander Graf:
>> 
>> On 05.10.2012, at 04:17, Anthony Liguori wrote:
>> 
>>> Alexander Graf <agraf@suse.de> writes:
>>> 
>>>> On 03.10.2012, at 22:26, Peter Maydell wrote:
>>>> 
>>>>> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>>>>>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>>>>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>>>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>>>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>>>>>   }
>>>>> 
>>>>>>> Blue/Aurelien, any objections?
>>>>>> 
>>>>>> No, maybe a message could be printed that says that the default has
>>>>>> changed, for a few releases.
>>>>> 
>>>>> I've lost track of the conversation, are we currently proposing
>>>>> the accelerator default to be "kvm" (as per the original patch
>>>>> you quote here) or "kvm:tcg" ?
>>>>> 
>>>>> I'm not entirely sure which I prefer from an ARM perspective
>>>>> For some time to come and for a lot of targets (ie any target
>>>>> CPU except A15), having a default of "kvm" is going to cause
>>>>> existing working commandlines to stop working. [I expect that
>>>>> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
>>>>> KVM support lands, but the same binary will be run on hosts
>>>>> without virtualization extensions.] On the other hand, perhaps
>>>>> there just aren't really very many people who run QEMU on
>>>>> ARM hosts, and so we can ignore them :-)
>>>> 
>>>> We get similar problems on PPC. Take the following example:
>>>> 
>>>> $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic
>>> 
>>> But do you really expect people to do this?  I have to believe that
>>> people running on PPC hardware and running qemu-system-ppc most likely
>>> want to do KVM...
>> 
>> Sure. But we wouldn't be able to even tell them what went wrong, as we don't have a negotiation mechanism right now that could tell user space "hey, the CPU you selected is unknown to me".
> 
> Would it help to split out the cpu_model -> CPUClass lookup from
> cpu_ppc_init() to invoke a hook or inquire a field indicating KVM support?

Well, we need to basically determine whether KVM is enabled only after cpu creation of the machine file.


Alex


^ permalink raw reply	[flat|nested] 97+ messages in thread

* Re: [Qemu-devel] [PATCH] kvm: Set default accelerator to "kvm" if the host supports it
@ 2012-10-08 14:08                               ` Alexander Graf
  0 siblings, 0 replies; 97+ messages in thread
From: Alexander Graf @ 2012-10-08 14:08 UTC (permalink / raw)
  To: Andreas Färber
  Cc: Peter Maydell, kvm, Scott Moser, Jan Kiszka, Marcelo Tosatti,
	Michael Tokarev, qemu-devel, Blue Swirl, Avi Kivity,
	Anthony Liguori, Cole Robinson, Paolo Bonzini, Aurelien Jarno


On 08.10.2012, at 16:03, Andreas Färber wrote:

> Am 05.10.2012 04:24, schrieb Alexander Graf:
>> 
>> On 05.10.2012, at 04:17, Anthony Liguori wrote:
>> 
>>> Alexander Graf <agraf@suse.de> writes:
>>> 
>>>> On 03.10.2012, at 22:26, Peter Maydell wrote:
>>>> 
>>>>> On 3 October 2012 21:01, Blue Swirl <blauwirbel@gmail.com> wrote:
>>>>>> On Mon, Oct 1, 2012 at 4:20 PM, Anthony Liguori <anthony@codemonkey.ws> wrote:
>>>>>>> Jan Kiszka <jan.kiszka@siemens.com> writes:
>>>>>>>> +        /* The default accelerator depends on the availability of KVM. */
>>>>>>>> +        p = kvm_configured ? "kvm" : "tcg";
>>>>>>>>   }
>>>>> 
>>>>>>> Blue/Aurelien, any objections?
>>>>>> 
>>>>>> No, maybe a message could be printed that says that the default has
>>>>>> changed, for a few releases.
>>>>> 
>>>>> I've lost track of the conversation, are we currently proposing
>>>>> the accelerator default to be "kvm" (as per the original patch
>>>>> you quote here) or "kvm:tcg" ?
>>>>> 
>>>>> I'm not entirely sure which I prefer from an ARM perspective
>>>>> For some time to come and for a lot of targets (ie any target
>>>>> CPU except A15), having a default of "kvm" is going to cause
>>>>> existing working commandlines to stop working. [I expect that
>>>>> ARM-host qemu binaries will be built with CONFIG_KVM once ARM
>>>>> KVM support lands, but the same binary will be run on hosts
>>>>> without virtualization extensions.] On the other hand, perhaps
>>>>> there just aren't really very many people who run QEMU on
>>>>> ARM hosts, and so we can ignore them :-)
>>>> 
>>>> We get similar problems on PPC. Take the following example:
>>>> 
>>>> $ qemu-system-ppc -M mpc8544ds -kernel uImage -nographic
>>> 
>>> But do you really expect people to do this?  I have to believe that
>>> people running on PPC hardware and running qemu-system-ppc most likely
>>> want to do KVM...
>> 
>> Sure. But we wouldn't be able to even tell them what went wrong, as we don't have a negotiation mechanism right now that could tell user space "hey, the CPU you selected is unknown to me".
> 
> Would it help to split out the cpu_model -> CPUClass lookup from
> cpu_ppc_init() to invoke a hook or inquire a field indicating KVM support?

Well, we need to basically determine whether KVM is enabled only after cpu creation of the machine file.


Alex

^ permalink raw reply	[flat|nested] 97+ messages in thread

end of thread, other threads:[~2012-10-08 14:08 UTC | newest]

Thread overview: 97+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-09-30 19:11 qemu-kvm: remove "boot=on|off" drive parameter compatibility Marcelo Tosatti
2012-10-01  1:02 ` Amos Kong
2012-10-01  8:05 ` Jan Kiszka
2012-10-01  9:31   ` Marcelo Tosatti
2012-10-01 10:21     ` Jan Kiszka
2012-10-01 13:03       ` Marcelo Tosatti
2012-10-01 13:14         ` Jan Kiszka
2012-10-01 13:19       ` Anthony Liguori
2012-10-01 13:19         ` [Qemu-devel] " Anthony Liguori
2012-10-01 13:26         ` Jan Kiszka
2012-10-01 13:26           ` [Qemu-devel] " Jan Kiszka
2012-10-03  9:55           ` Gleb Natapov
2012-10-03  9:55             ` Gleb Natapov
2012-10-03 10:06             ` Jan Kiszka
2012-10-03 10:06               ` Jan Kiszka
2012-10-03 10:11               ` Gleb Natapov
2012-10-03 10:11                 ` Gleb Natapov
2012-10-03 10:57             ` Lucas Meneghel Rodrigues
2012-10-03 10:57               ` [Qemu-devel] " Lucas Meneghel Rodrigues
2012-10-03 13:19               ` Paolo Bonzini
2012-10-03 13:19                 ` [Qemu-devel] " Paolo Bonzini
2012-10-03 13:27                 ` Gleb Natapov
2012-10-03 13:27                   ` [Qemu-devel] " Gleb Natapov
2012-10-04 10:48                 ` Jan Kiszka
2012-10-04 10:48                   ` [Qemu-devel] " Jan Kiszka
2012-10-04 12:10                   ` Lucas Meneghel Rodrigues
2012-10-04 12:10                     ` [Qemu-devel] " Lucas Meneghel Rodrigues
2012-10-04 12:27                     ` Jan Kiszka
2012-10-04 12:27                       ` [Qemu-devel] " Jan Kiszka
2012-10-04 17:21                       ` Lucas Meneghel Rodrigues
2012-10-04 17:21                         ` [Qemu-devel] " Lucas Meneghel Rodrigues
2012-10-04 17:24                         ` Jan Kiszka
2012-10-04 17:24                           ` [Qemu-devel] " Jan Kiszka
2012-10-01 13:31         ` Marcelo Tosatti
2012-10-01 13:31           ` [Qemu-devel] " Marcelo Tosatti
2012-10-01 13:36           ` Jan Kiszka
2012-10-01 13:36             ` [Qemu-devel] " Jan Kiszka
2012-10-01 13:44             ` Michael Tokarev
2012-10-01 13:44               ` [Qemu-devel] " Michael Tokarev
2012-10-01 13:48               ` Jan Kiszka
2012-10-01 13:48                 ` [Qemu-devel] " Jan Kiszka
2012-10-01 13:38         ` Paolo Bonzini
2012-10-01 13:38           ` [Qemu-devel] " Paolo Bonzini
2012-10-01 13:46           ` Jan Kiszka
2012-10-01 13:46             ` [Qemu-devel] " Jan Kiszka
2012-10-01 14:04           ` Anthony Liguori
2012-10-01 14:04             ` [Qemu-devel] " Anthony Liguori
2012-10-01 14:34             ` [PATCH] kvm: Set default accelerator to "kvm" if the host supports it Jan Kiszka
2012-10-01 14:34               ` [Qemu-devel] " Jan Kiszka
2012-10-01 16:20               ` Anthony Liguori
2012-10-01 16:20                 ` [Qemu-devel] " Anthony Liguori
2012-10-01 16:56                 ` Aurelien Jarno
2012-10-01 16:56                   ` [Qemu-devel] " Aurelien Jarno
2012-10-03  9:02                 ` Jan Kiszka
2012-10-03  9:02                   ` [Qemu-devel] " Jan Kiszka
2012-10-03 20:01                 ` Blue Swirl
2012-10-03 20:01                   ` [Qemu-devel] " Blue Swirl
2012-10-03 20:26                   ` Peter Maydell
2012-10-03 20:26                     ` Peter Maydell
2012-10-05  1:15                     ` Alexander Graf
2012-10-05  1:15                       ` Alexander Graf
2012-10-05  2:17                       ` Anthony Liguori
2012-10-05  2:17                         ` [Qemu-devel] " Anthony Liguori
2012-10-05  2:24                         ` Alexander Graf
2012-10-05  2:24                           ` Alexander Graf
2012-10-05  8:15                           ` Peter Maydell
2012-10-05  8:15                             ` Peter Maydell
2012-10-08 14:03                           ` Andreas Färber
2012-10-08 14:03                             ` Andreas Färber
2012-10-08 14:08                             ` Alexander Graf
2012-10-08 14:08                               ` Alexander Graf
2012-10-01 16:43               ` Andreas Färber
2012-10-01 16:43                 ` Andreas Färber
2012-10-01 16:47                 ` Daniel P. Berrange
2012-10-01 16:47                   ` Daniel P. Berrange
2012-10-01 19:03                   ` Anthony Liguori
2012-10-01 19:03                     ` Anthony Liguori
2012-10-01 19:25                     ` Paolo Bonzini
2012-10-01 19:25                       ` [Qemu-devel] " Paolo Bonzini
2012-10-01 20:07                       ` Anthony Liguori
2012-10-01 20:07                         ` Anthony Liguori
2012-10-02  7:46                   ` Markus Armbruster
2012-10-02  7:46                     ` [Qemu-devel] " Markus Armbruster
2012-10-02  8:15                     ` Aurelien Jarno
2012-10-02  8:15                       ` Aurelien Jarno
2012-10-03  6:58                     ` Michael Tokarev
2012-10-03  6:58                       ` Michael Tokarev
2012-10-03  9:05                       ` Jan Kiszka
2012-10-03  9:05                         ` [Qemu-devel] " Jan Kiszka
2012-10-01 14:07         ` qemu-kvm: remove "boot=on|off" drive parameter compatibility Alexander Graf
2012-10-01 14:07           ` [Qemu-devel] " Alexander Graf
2012-10-01 14:20           ` Paolo Bonzini
2012-10-01 14:20             ` [Qemu-devel] " Paolo Bonzini
2012-10-01 15:39         ` Bruce Rogers
2012-10-01 15:39           ` Bruce Rogers
2012-10-02  8:14         ` Daniel P. Berrange
2012-10-02  8:14           ` [Qemu-devel] " Daniel P. Berrange

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.