kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] configure: Add --disable-kvm-options
@ 2012-08-13 22:49 Cole Robinson
  2012-08-14  3:33 ` Dunrong Huang
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Cole Robinson @ 2012-08-13 22:49 UTC (permalink / raw)
  To: kvm; +Cc: Cole Robinson

In Fedora, our qemu package is based on qemu-kvm, and we go to convoluted
lengths to provide a qemu-kvm binary with KVM on by default, but all
qemu-system-* with KVM off by default (using ./configure --disable-kvm)

For qemu-system*, what we really want is upstream qemu symantics of TCG
by default, but the opt in option for KVM. CONFIG_KVM_OPTIONS fits the
bill, so let's expose it through ./configure. This will also simplify
our packaging for non-x86 KVM.

Signed-off-by: Cole Robinson <crobinso@redhat.com>
---
 configure | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index 6b66d34..8f4d9e3 100755
--- a/configure
+++ b/configure
@@ -189,6 +189,7 @@ guest_base=""
 uname_release=""
 mixemu="no"
 kvm_cap_device_assignment="yes"
+kvmoptions="yes"
 aix="no"
 blobs="yes"
 pkgversion=" ($(kvm_version))"
@@ -707,6 +708,8 @@ for opt do
   ;;
   --enable-kvm) kvm="yes"
   ;;
+  --disable-kvm-options) kvmoptions="no"
+  ;;
   --disable-tcg-interpreter) tcg_interpreter="no"
   ;;
   --enable-tcg-interpreter) tcg_interpreter="yes"
@@ -1071,6 +1074,8 @@ echo "  --enable-bluez           enable bluez stack connectivity"
 echo "  --disable-slirp          disable SLIRP userspace network connectivity"
 echo "  --disable-kvm            disable KVM acceleration support"
 echo "  --enable-kvm             enable KVM acceleration support"
+echo "  --disable-kvm-options    if KVM is enabled, default to KVM=off, and"
+echo "                           remove non-upstream cli options"
 echo "  --enable-tcg-interpreter enable TCG with bytecode interpreter (TCI)"
 echo "  --disable-kvm-device-assignment  disable KVM device assignment support"
 echo "  --enable-kvm-device-assignment   enable KVM device assignment support"
@@ -3101,6 +3106,7 @@ echo "Install blobs     $blobs"
 echo "KVM support       $kvm"
 echo "TCG interpreter   $tcg_interpreter"
 echo "KVM device assig. $kvm_cap_device_assignment"
+echo "KVM CLI options   $kvmoptions"
 echo "fdt support       $fdt"
 echo "preadv support    $preadv"
 echo "fdatasync         $fdatasync"
@@ -3818,7 +3824,10 @@ case "$target_arch2" in
       \( "$target_arch2" = "x86_64" -a "$cpu" = "i386"   \) -o \
       \( "$target_arch2" = "i386"   -a "$cpu" = "x86_64" \) \) ; then
       echo "CONFIG_KVM=y" >> $config_target_mak
-      echo "CONFIG_KVM_OPTIONS=y" >> $config_host_mak
+
+      if test "$kvmoptions" = "yes" ; then
+        echo "CONFIG_KVM_OPTIONS=y" >> $config_host_mak
+      fi
       if test "$vhost_net" = "yes" ; then
         echo "CONFIG_VHOST_NET=y" >> $config_target_mak
       fi
-- 
1.7.11.2


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

* Re: [PATCH] configure: Add --disable-kvm-options
  2012-08-13 22:49 [PATCH] configure: Add --disable-kvm-options Cole Robinson
@ 2012-08-14  3:33 ` Dunrong Huang
  2012-08-14  7:48 ` Jan Kiszka
  2012-08-15  1:40 ` Marcelo Tosatti
  2 siblings, 0 replies; 5+ messages in thread
From: Dunrong Huang @ 2012-08-14  3:33 UTC (permalink / raw)
  To: Cole Robinson; +Cc: kvm

2012/8/14 Cole Robinson <crobinso@redhat.com>:
> In Fedora, our qemu package is based on qemu-kvm, and we go to convoluted
> lengths to provide a qemu-kvm binary with KVM on by default, but all
> qemu-system-* with KVM off by default (using ./configure --disable-kvm)
>
> For qemu-system*, what we really want is upstream qemu symantics of TCG
> by default, but the opt in option for KVM. CONFIG_KVM_OPTIONS fits the
> bill, so let's expose it through ./configure. This will also simplify
> our packaging for non-x86 KVM.
>
> Signed-off-by: Cole Robinson <crobinso@redhat.com>
> ---
>  configure | 11 ++++++++++-
>  1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/configure b/configure
> index 6b66d34..8f4d9e3 100755
> --- a/configure
> +++ b/configure
> @@ -189,6 +189,7 @@ guest_base=""
>  uname_release=""
>  mixemu="no"
>  kvm_cap_device_assignment="yes"
> +kvmoptions="yes"
>  aix="no"
>  blobs="yes"
>  pkgversion=" ($(kvm_version))"
> @@ -707,6 +708,8 @@ for opt do
>    ;;
>    --enable-kvm) kvm="yes"
>    ;;
> +  --disable-kvm-options) kvmoptions="no"
> +  ;;
>    --disable-tcg-interpreter) tcg_interpreter="no"
>    ;;
>    --enable-tcg-interpreter) tcg_interpreter="yes"
> @@ -1071,6 +1074,8 @@ echo "  --enable-bluez           enable bluez stack connectivity"
>  echo "  --disable-slirp          disable SLIRP userspace network connectivity"
>  echo "  --disable-kvm            disable KVM acceleration support"
>  echo "  --enable-kvm             enable KVM acceleration support"
> +echo "  --disable-kvm-options    if KVM is enabled, default to KVM=off, and"
> +echo "                           remove non-upstream cli options"
>  echo "  --enable-tcg-interpreter enable TCG with bytecode interpreter (TCI)"
>  echo "  --disable-kvm-device-assignment  disable KVM device assignment support"
>  echo "  --enable-kvm-device-assignment   enable KVM device assignment support"
> @@ -3101,6 +3106,7 @@ echo "Install blobs     $blobs"
>  echo "KVM support       $kvm"
>  echo "TCG interpreter   $tcg_interpreter"
>  echo "KVM device assig. $kvm_cap_device_assignment"
> +echo "KVM CLI options   $kvmoptions"
>  echo "fdt support       $fdt"
>  echo "preadv support    $preadv"
>  echo "fdatasync         $fdatasync"
> @@ -3818,7 +3824,10 @@ case "$target_arch2" in
>        \( "$target_arch2" = "x86_64" -a "$cpu" = "i386"   \) -o \
>        \( "$target_arch2" = "i386"   -a "$cpu" = "x86_64" \) \) ; then
>        echo "CONFIG_KVM=y" >> $config_target_mak
> -      echo "CONFIG_KVM_OPTIONS=y" >> $config_host_mak
> +
> +      if test "$kvmoptions" = "yes" ; then
> +        echo "CONFIG_KVM_OPTIONS=y" >> $config_host_mak
> +      fi
>        if test "$vhost_net" = "yes" ; then
>          echo "CONFIG_VHOST_NET=y" >> $config_target_mak
>        fi
> --
> 1.7.11.2
>
> --

Please CC this patch to the qemu mailing list, :-)
-- 
Best Regards,

Dunrong Huang

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

* Re: [PATCH] configure: Add --disable-kvm-options
  2012-08-13 22:49 [PATCH] configure: Add --disable-kvm-options Cole Robinson
  2012-08-14  3:33 ` Dunrong Huang
@ 2012-08-14  7:48 ` Jan Kiszka
  2012-08-15  1:40 ` Marcelo Tosatti
  2 siblings, 0 replies; 5+ messages in thread
From: Jan Kiszka @ 2012-08-14  7:48 UTC (permalink / raw)
  To: Cole Robinson; +Cc: kvm

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

On 2012-08-14 00:49, Cole Robinson wrote:
> In Fedora, our qemu package is based on qemu-kvm, and we go to convoluted
> lengths to provide a qemu-kvm binary with KVM on by default, but all
> qemu-system-* with KVM off by default (using ./configure --disable-kvm)
> 
> For qemu-system*, what we really want is upstream qemu symantics of TCG
> by default, but the opt in option for KVM. CONFIG_KVM_OPTIONS fits the
> bill, so let's expose it through ./configure. This will also simplify
> our packaging for non-x86 KVM.

I personally do not care about qemu-kvm anymore and will likely stop
contributing to it once device assignment is merged. So I have no real
opinion on this patch. But as we are discussing this in another thread
right now [1], I rather wonder what are the requirements for Fedora to
finally switch to QEMU upstream.

Jan

[1] http://thread.gmane.org/gmane.comp.emulators.kvm.devel/96170--


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

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

* Re: [PATCH] configure: Add --disable-kvm-options
  2012-08-13 22:49 [PATCH] configure: Add --disable-kvm-options Cole Robinson
  2012-08-14  3:33 ` Dunrong Huang
  2012-08-14  7:48 ` Jan Kiszka
@ 2012-08-15  1:40 ` Marcelo Tosatti
  2012-08-15 13:41   ` Cole Robinson
  2 siblings, 1 reply; 5+ messages in thread
From: Marcelo Tosatti @ 2012-08-15  1:40 UTC (permalink / raw)
  To: Cole Robinson; +Cc: kvm

On Mon, Aug 13, 2012 at 06:49:49PM -0400, Cole Robinson wrote:
> In Fedora, our qemu package is based on qemu-kvm, and we go to convoluted
> lengths to provide a qemu-kvm binary with KVM on by default, but all
> qemu-system-* with KVM off by default (using ./configure --disable-kvm)
> 
> For qemu-system*, what we really want is upstream qemu symantics of TCG
> by default, but the opt in option for KVM. CONFIG_KVM_OPTIONS fits the
> bill, so let's expose it through ./configure. This will also simplify
> our packaging for non-x86 KVM.
> 
> Signed-off-by: Cole Robinson <crobinso@redhat.com>

This is another deviation from upstream QEMU included in qemu-kvm, which
means someone else can use/rely on this option. While the goal is to
kill qemu-kvm.

Please carry it in the RPM, it should not be much trouble do that.

>  configure | 11 ++++++++++-
>  1 file changed, 10 insertions(+), 1 deletion(-)
> 
> diff --git a/configure b/configure
> index 6b66d34..8f4d9e3 100755
> --- a/configure
> +++ b/configure
> @@ -189,6 +189,7 @@ guest_base=""
>  uname_release=""
>  mixemu="no"
>  kvm_cap_device_assignment="yes"
> +kvmoptions="yes"
>  aix="no"
>  blobs="yes"
>  pkgversion=" ($(kvm_version))"
> @@ -707,6 +708,8 @@ for opt do
>    ;;
>    --enable-kvm) kvm="yes"
>    ;;
> +  --disable-kvm-options) kvmoptions="no"
> +  ;;
>    --disable-tcg-interpreter) tcg_interpreter="no"
>    ;;
>    --enable-tcg-interpreter) tcg_interpreter="yes"
> @@ -1071,6 +1074,8 @@ echo "  --enable-bluez           enable bluez stack connectivity"
>  echo "  --disable-slirp          disable SLIRP userspace network connectivity"
>  echo "  --disable-kvm            disable KVM acceleration support"
>  echo "  --enable-kvm             enable KVM acceleration support"
> +echo "  --disable-kvm-options    if KVM is enabled, default to KVM=off, and"
> +echo "                           remove non-upstream cli options"
>  echo "  --enable-tcg-interpreter enable TCG with bytecode interpreter (TCI)"
>  echo "  --disable-kvm-device-assignment  disable KVM device assignment support"
>  echo "  --enable-kvm-device-assignment   enable KVM device assignment support"
> @@ -3101,6 +3106,7 @@ echo "Install blobs     $blobs"
>  echo "KVM support       $kvm"
>  echo "TCG interpreter   $tcg_interpreter"
>  echo "KVM device assig. $kvm_cap_device_assignment"
> +echo "KVM CLI options   $kvmoptions"
>  echo "fdt support       $fdt"
>  echo "preadv support    $preadv"
>  echo "fdatasync         $fdatasync"
> @@ -3818,7 +3824,10 @@ case "$target_arch2" in
>        \( "$target_arch2" = "x86_64" -a "$cpu" = "i386"   \) -o \
>        \( "$target_arch2" = "i386"   -a "$cpu" = "x86_64" \) \) ; then
>        echo "CONFIG_KVM=y" >> $config_target_mak
> -      echo "CONFIG_KVM_OPTIONS=y" >> $config_host_mak
> +
> +      if test "$kvmoptions" = "yes" ; then
> +        echo "CONFIG_KVM_OPTIONS=y" >> $config_host_mak
> +      fi
>        if test "$vhost_net" = "yes" ; then
>          echo "CONFIG_VHOST_NET=y" >> $config_target_mak
>        fi
> -- 
> 1.7.11.2
> 
> --
> 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] 5+ messages in thread

* Re: [PATCH] configure: Add --disable-kvm-options
  2012-08-15  1:40 ` Marcelo Tosatti
@ 2012-08-15 13:41   ` Cole Robinson
  0 siblings, 0 replies; 5+ messages in thread
From: Cole Robinson @ 2012-08-15 13:41 UTC (permalink / raw)
  To: Marcelo Tosatti; +Cc: kvm

On 08/14/2012 09:40 PM, Marcelo Tosatti wrote:
> On Mon, Aug 13, 2012 at 06:49:49PM -0400, Cole Robinson wrote:
>> In Fedora, our qemu package is based on qemu-kvm, and we go to convoluted
>> lengths to provide a qemu-kvm binary with KVM on by default, but all
>> qemu-system-* with KVM off by default (using ./configure --disable-kvm)
>>
>> For qemu-system*, what we really want is upstream qemu symantics of TCG
>> by default, but the opt in option for KVM. CONFIG_KVM_OPTIONS fits the
>> bill, so let's expose it through ./configure. This will also simplify
>> our packaging for non-x86 KVM.
>>
>> Signed-off-by: Cole Robinson <crobinso@redhat.com>
> 
> This is another deviation from upstream QEMU included in qemu-kvm, which
> means someone else can use/rely on this option. While the goal is to
> kill qemu-kvm.
> 
> Please carry it in the RPM, it should not be much trouble do that.
> 

Works for me, thanks.

- Cole


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

end of thread, other threads:[~2012-08-15 13:41 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-08-13 22:49 [PATCH] configure: Add --disable-kvm-options Cole Robinson
2012-08-14  3:33 ` Dunrong Huang
2012-08-14  7:48 ` Jan Kiszka
2012-08-15  1:40 ` Marcelo Tosatti
2012-08-15 13:41   ` Cole Robinson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).