kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [kvm-unit-tests PATCH v2] configure: arm: Replace --vmm with --target
@ 2021-04-27 16:34 Alexandru Elisei
  2021-04-27 17:10 ` Andrew Jones
  0 siblings, 1 reply; 3+ messages in thread
From: Alexandru Elisei @ 2021-04-27 16:34 UTC (permalink / raw)
  To: drjones, kvm, kvmarm; +Cc: pbonzini

The --vmm configure option was added to distinguish between the two virtual
machine managers that kvm-unit-tests supports, qemu or kvmtool. There are
plans to make kvm-unit-tests work as an EFI app, which will require changes
to the way tests are compiled. Instead of adding a new configure option
specifically for EFI and have it coexist with --vmm, or overloading the
semantics of the existing --vmm option, let's replace --vmm with the more
generic name --target.

Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>
---
Changes in v2:

* Removed the RFC tag and cover letter.
* Removed --vmm entirely.

 configure | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/configure b/configure
index 01a0b262a9f2..08c6afdf952c 100755
--- a/configure
+++ b/configure
@@ -21,7 +21,7 @@ pretty_print_stacks=yes
 environ_default=yes
 u32_long=
 wa_divide=
-vmm="qemu"
+target="qemu"
 errata_force=0
 erratatxt="$srcdir/errata.txt"
 host_key_document=
@@ -35,8 +35,8 @@ usage() {
 	Options include:
 	    --arch=ARCH            architecture to compile for ($arch)
 	    --processor=PROCESSOR  processor to compile for ($arch)
-	    --vmm=VMM              virtual machine monitor to compile for (qemu
-	                           or kvmtool, default is qemu) (arm/arm64 only)
+	    --target=TARGET        target platform that the tests will be running on (qemu or
+	                           kvmtool, default is qemu) (arm/arm64 only)
 	    --cross-prefix=PREFIX  cross compiler prefix
 	    --cc=CC		   c compiler to use ($cc)
 	    --ld=LD		   ld linker to use ($ld)
@@ -58,7 +58,7 @@ usage() {
 	    --earlycon=EARLYCON
 	                           Specify the UART name, type and address (optional, arm and
 	                           arm64 only). The specified address will overwrite the UART
-	                           address set by the --vmm option. EARLYCON can be one of
+	                           address set by the --target option. EARLYCON can be one of
 	                           (case sensitive):
 	               uart[8250],mmio,ADDR
 	                           Specify an 8250 compatible UART at address ADDR. Supported
@@ -88,8 +88,8 @@ while [[ "$1" = -* ]]; do
         --processor)
 	    processor="$arg"
 	    ;;
-	--vmm)
-	    vmm="$arg"
+	--target)
+	    target="$arg"
 	    ;;
 	--cross-prefix)
 	    cross_prefix="$arg"
@@ -177,13 +177,13 @@ if [ "$arch" = "i386" ] || [ "$arch" = "x86_64" ]; then
     testdir=x86
 elif [ "$arch" = "arm" ] || [ "$arch" = "arm64" ]; then
     testdir=arm
-    if [ "$vmm" = "qemu" ]; then
+    if [ "$target" = "qemu" ]; then
         arm_uart_early_addr=0x09000000
-    elif [ "$vmm" = "kvmtool" ]; then
+    elif [ "$target" = "kvmtool" ]; then
         arm_uart_early_addr=0x3f8
         errata_force=1
     else
-        echo '--vmm must be one of "qemu" or "kvmtool"!'
+        echo '--target must be one of "qemu" or "kvmtool"!'
         usage
     fi
 
@@ -317,6 +317,7 @@ U32_LONG_FMT=$u32_long
 WA_DIVIDE=$wa_divide
 GENPROTIMG=${GENPROTIMG-genprotimg}
 HOST_KEY_DOCUMENT=$host_key_document
+TARGET=$target
 EOF
 
 cat <<EOF > lib/config.h
-- 
2.31.1


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

* Re: [kvm-unit-tests PATCH v2] configure: arm: Replace --vmm with --target
  2021-04-27 16:34 [kvm-unit-tests PATCH v2] configure: arm: Replace --vmm with --target Alexandru Elisei
@ 2021-04-27 17:10 ` Andrew Jones
  2021-04-28 14:44   ` Alexandru Elisei
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Jones @ 2021-04-27 17:10 UTC (permalink / raw)
  To: Alexandru Elisei; +Cc: kvm, kvmarm, pbonzini

On Tue, Apr 27, 2021 at 05:34:37PM +0100, Alexandru Elisei wrote:
> The --vmm configure option was added to distinguish between the two virtual
> machine managers that kvm-unit-tests supports, qemu or kvmtool. There are
> plans to make kvm-unit-tests work as an EFI app, which will require changes
> to the way tests are compiled. Instead of adding a new configure option
> specifically for EFI and have it coexist with --vmm, or overloading the
> semantics of the existing --vmm option, let's replace --vmm with the more
> generic name --target.
> 
> Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>
> ---
> Changes in v2:
> 
> * Removed the RFC tag and cover letter.
> * Removed --vmm entirely.
> 
>  configure | 19 ++++++++++---------
>  1 file changed, 10 insertions(+), 9 deletions(-)
> 
> diff --git a/configure b/configure
> index 01a0b262a9f2..08c6afdf952c 100755
> --- a/configure
> +++ b/configure
> @@ -21,7 +21,7 @@ pretty_print_stacks=yes
>  environ_default=yes
>  u32_long=
>  wa_divide=
> -vmm="qemu"
> +target="qemu"
>  errata_force=0
>  erratatxt="$srcdir/errata.txt"
>  host_key_document=
> @@ -35,8 +35,8 @@ usage() {
>  	Options include:
>  	    --arch=ARCH            architecture to compile for ($arch)
>  	    --processor=PROCESSOR  processor to compile for ($arch)
> -	    --vmm=VMM              virtual machine monitor to compile for (qemu
> -	                           or kvmtool, default is qemu) (arm/arm64 only)
> +	    --target=TARGET        target platform that the tests will be running on (qemu or
> +	                           kvmtool, default is qemu) (arm/arm64 only)
>  	    --cross-prefix=PREFIX  cross compiler prefix
>  	    --cc=CC		   c compiler to use ($cc)
>  	    --ld=LD		   ld linker to use ($ld)
> @@ -58,7 +58,7 @@ usage() {
>  	    --earlycon=EARLYCON
>  	                           Specify the UART name, type and address (optional, arm and
>  	                           arm64 only). The specified address will overwrite the UART
> -	                           address set by the --vmm option. EARLYCON can be one of
> +	                           address set by the --target option. EARLYCON can be one of
>  	                           (case sensitive):
>  	               uart[8250],mmio,ADDR
>  	                           Specify an 8250 compatible UART at address ADDR. Supported
> @@ -88,8 +88,8 @@ while [[ "$1" = -* ]]; do
>          --processor)
>  	    processor="$arg"
>  	    ;;
> -	--vmm)
> -	    vmm="$arg"
> +	--target)
> +	    target="$arg"
>  	    ;;
>  	--cross-prefix)
>  	    cross_prefix="$arg"
> @@ -177,13 +177,13 @@ if [ "$arch" = "i386" ] || [ "$arch" = "x86_64" ]; then
>      testdir=x86
>  elif [ "$arch" = "arm" ] || [ "$arch" = "arm64" ]; then
>      testdir=arm
> -    if [ "$vmm" = "qemu" ]; then
> +    if [ "$target" = "qemu" ]; then
>          arm_uart_early_addr=0x09000000
> -    elif [ "$vmm" = "kvmtool" ]; then
> +    elif [ "$target" = "kvmtool" ]; then
>          arm_uart_early_addr=0x3f8
>          errata_force=1
>      else
> -        echo '--vmm must be one of "qemu" or "kvmtool"!'
> +        echo '--target must be one of "qemu" or "kvmtool"!'
>          usage
>      fi
>  
> @@ -317,6 +317,7 @@ U32_LONG_FMT=$u32_long
>  WA_DIVIDE=$wa_divide
>  GENPROTIMG=${GENPROTIMG-genprotimg}
>  HOST_KEY_DOCUMENT=$host_key_document
> +TARGET=$target

We should only emit this TARGET=qemu to the config.mak when we're
arm/arm64, since that's what the help text says. Also, because the help
text says that the --target option is only for arm/arm64, then configure
should error out if it's used with another architecture. The nice thing
about this rename is that we can get that right this time. We didn't error
out with --vmm, but we should have. Erroring out on an unsupported
feature allows us to add support for it later without the users having
to guess if it'll work or not.

Thanks,
drew

>  EOF
>  
>  cat <<EOF > lib/config.h
> -- 
> 2.31.1
> 


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

* Re: [kvm-unit-tests PATCH v2] configure: arm: Replace --vmm with --target
  2021-04-27 17:10 ` Andrew Jones
@ 2021-04-28 14:44   ` Alexandru Elisei
  0 siblings, 0 replies; 3+ messages in thread
From: Alexandru Elisei @ 2021-04-28 14:44 UTC (permalink / raw)
  To: Andrew Jones; +Cc: kvm, kvmarm, pbonzini

Hi Drew,

On 4/27/21 6:10 PM, Andrew Jones wrote:
> On Tue, Apr 27, 2021 at 05:34:37PM +0100, Alexandru Elisei wrote:
>> The --vmm configure option was added to distinguish between the two virtual
>> machine managers that kvm-unit-tests supports, qemu or kvmtool. There are
>> plans to make kvm-unit-tests work as an EFI app, which will require changes
>> to the way tests are compiled. Instead of adding a new configure option
>> specifically for EFI and have it coexist with --vmm, or overloading the
>> semantics of the existing --vmm option, let's replace --vmm with the more
>> generic name --target.
>>
>> Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>
>> ---
>> Changes in v2:
>>
>> * Removed the RFC tag and cover letter.
>> * Removed --vmm entirely.
>>
>>  configure | 19 ++++++++++---------
>>  1 file changed, 10 insertions(+), 9 deletions(-)
>>
>> diff --git a/configure b/configure
>> index 01a0b262a9f2..08c6afdf952c 100755
>> --- a/configure
>> +++ b/configure
>> @@ -21,7 +21,7 @@ pretty_print_stacks=yes
>>  environ_default=yes
>>  u32_long=
>>  wa_divide=
>> -vmm="qemu"
>> +target="qemu"
>>  errata_force=0
>>  erratatxt="$srcdir/errata.txt"
>>  host_key_document=
>> @@ -35,8 +35,8 @@ usage() {
>>  	Options include:
>>  	    --arch=ARCH            architecture to compile for ($arch)
>>  	    --processor=PROCESSOR  processor to compile for ($arch)
>> -	    --vmm=VMM              virtual machine monitor to compile for (qemu
>> -	                           or kvmtool, default is qemu) (arm/arm64 only)
>> +	    --target=TARGET        target platform that the tests will be running on (qemu or
>> +	                           kvmtool, default is qemu) (arm/arm64 only)
>>  	    --cross-prefix=PREFIX  cross compiler prefix
>>  	    --cc=CC		   c compiler to use ($cc)
>>  	    --ld=LD		   ld linker to use ($ld)
>> @@ -58,7 +58,7 @@ usage() {
>>  	    --earlycon=EARLYCON
>>  	                           Specify the UART name, type and address (optional, arm and
>>  	                           arm64 only). The specified address will overwrite the UART
>> -	                           address set by the --vmm option. EARLYCON can be one of
>> +	                           address set by the --target option. EARLYCON can be one of
>>  	                           (case sensitive):
>>  	               uart[8250],mmio,ADDR
>>  	                           Specify an 8250 compatible UART at address ADDR. Supported
>> @@ -88,8 +88,8 @@ while [[ "$1" = -* ]]; do
>>          --processor)
>>  	    processor="$arg"
>>  	    ;;
>> -	--vmm)
>> -	    vmm="$arg"
>> +	--target)
>> +	    target="$arg"
>>  	    ;;
>>  	--cross-prefix)
>>  	    cross_prefix="$arg"
>> @@ -177,13 +177,13 @@ if [ "$arch" = "i386" ] || [ "$arch" = "x86_64" ]; then
>>      testdir=x86
>>  elif [ "$arch" = "arm" ] || [ "$arch" = "arm64" ]; then
>>      testdir=arm
>> -    if [ "$vmm" = "qemu" ]; then
>> +    if [ "$target" = "qemu" ]; then
>>          arm_uart_early_addr=0x09000000
>> -    elif [ "$vmm" = "kvmtool" ]; then
>> +    elif [ "$target" = "kvmtool" ]; then
>>          arm_uart_early_addr=0x3f8
>>          errata_force=1
>>      else
>> -        echo '--vmm must be one of "qemu" or "kvmtool"!'
>> +        echo '--target must be one of "qemu" or "kvmtool"!'
>>          usage
>>      fi
>>  
>> @@ -317,6 +317,7 @@ U32_LONG_FMT=$u32_long
>>  WA_DIVIDE=$wa_divide
>>  GENPROTIMG=${GENPROTIMG-genprotimg}
>>  HOST_KEY_DOCUMENT=$host_key_document
>> +TARGET=$target
> We should only emit this TARGET=qemu to the config.mak when we're
> arm/arm64, since that's what the help text says. Also, because the help
> text says that the --target option is only for arm/arm64, then configure
> should error out if it's used with another architecture. The nice thing
> about this rename is that we can get that right this time. We didn't error
> out with --vmm, but we should have. Erroring out on an unsupported
> feature allows us to add support for it later without the users having
> to guess if it'll work or not.

You're right, I'll fix it for v3.

Thanks,

Alex

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

end of thread, other threads:[~2021-04-28 14:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-27 16:34 [kvm-unit-tests PATCH v2] configure: arm: Replace --vmm with --target Alexandru Elisei
2021-04-27 17:10 ` Andrew Jones
2021-04-28 14:44   ` Alexandru Elisei

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).