Re: [kvm-unit-tests PATCH 1/4] scripts/arch-run: function to search qemu binary

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Series applied with some cleanups:

diff --git a/arm/run b/arm/run
index 696228e..bae43fd 100755
--- a/arm/run
+++ b/arm/run
@@ -31,13 +31,10 @@ if [ -z "$ACCEL" ]; then
 	fi
 fi
 
-# qemu_binary () defined in scripts/arch-run.bash
-qemu_binary
-
-qpath=$(which $qemu 2>/dev/null)
+qemu=$(search_qemu_binary)
 
 if ! $qemu -machine '?' 2>&1 | grep 'ARM Virtual Machine' > /dev/null; then
-	echo "$qpath doesn't support mach-virt ('-machine virt'). Exiting."
+	echo "$qemu doesn't support mach-virt ('-machine virt'). Exiting."
 	exit 2
 fi
 
@@ -56,13 +53,13 @@ if [ "$ACCEL" = "kvm" ]; then
 fi
 
 if ! $qemu $M -device '?' 2>&1 | grep virtconsole > /dev/null; then
-	echo "$qpath doesn't support virtio-console for chr-testdev. Exiting."
+	echo "$qemu doesn't support virtio-console for chr-testdev. Exiting."
 	exit 2
 fi
 
 if $qemu $M -chardev testdev,id=id -initrd . 2>&1 \
 		| grep backend > /dev/null; then
-	echo "$qpath doesn't support chr-testdev. Exiting."
+	echo "$qemu doesn't support chr-testdev. Exiting."
 	exit 2
 fi
 
diff --git a/powerpc/run b/powerpc/run
index 4302fe2..69d2b53 100755
--- a/powerpc/run
+++ b/powerpc/run
@@ -28,13 +28,10 @@ if [ -z "$ACCEL" ]; then
 	fi
 fi
 
-# qemu_binary () defined in scripts/arch-run.bash
-qemu_binary
-
-qpath=$(which $qemu 2>/dev/null)
+qemu=$(search_qemu_binary)
 
 if ! $qemu -machine '?' 2>&1 | grep 'pseries' > /dev/null; then
-	echo "$qpath doesn't support pSeries ('-machine pseries'). Exiting."
+	echo "$qemu doesn't support pSeries ('-machine pseries'). Exiting."
 	exit 2
 fi
 
diff --git a/scripts/arch-run.bash b/scripts/arch-run.bash
index 404a4c0..fb5fd7d 100644
--- a/scripts/arch-run.bash
+++ b/scripts/arch-run.bash
@@ -135,11 +135,12 @@ migration_cmd ()
 }
 
 # qemu binary search function for all arches
-qemu_binary ()
+search_qemu_binary ()
 {
-    qemubinarysearch="${QEMU:-qemu-system-$ARCH_NAME qemu-kvm}"
-    for qemucmd in ${qemubinarysearch}
+    PATH=$PATH:/usr/libexec
+    local save_path=$PATH
+    local qemucmd QEMUFOUND qemu
+    export PATH=$PATH:/usr/libexec
+    for qemucmd in ${QEMU:-qemu-system-$ARCH_NAME qemu-kvm}
     do
         unset QEMUFOUND
         unset qemu
@@ -154,4 +155,6 @@ qemu_binary ()
         echo "A QEMU binary was not found, You can set a custom location by using the QEMU=<path> environment variable"
         exit 2
     fi
+    which $qemu
+    export PATH=$save_path
 }
diff --git a/x86/run b/x86/run
index eebfef9..b4db2a9 100755
--- a/x86/run
+++ b/x86/run
@@ -2,8 +2,7 @@
 
 [ -z "$STANDALONE" ] && source scripts/arch-run.bash
 
-# qemu_binary () defined in scripts/arch-run.bash
-qemu_binary
+qemu=$(search_qemu_binary)
 
 if ! ${qemu} -device '?' 2>&1 | grep -F -e \"testdev\" -e \"pc-testdev\" > /dev/null;
 then


On 19/04/2017 21:14, Balamuruhan S wrote:
> qemu_binary function to seach qemu binary similar to x86/run does
> so that it can be reused for all arches
> 
> Signed-off-by: Balamuruhan S <bala24@xxxxxxxxxxxxxxxxxx>
> ---
>  scripts/arch-run.bash | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
> 
> diff --git a/scripts/arch-run.bash b/scripts/arch-run.bash
> index 94c50f3..404a4c0 100644
> --- a/scripts/arch-run.bash
> +++ b/scripts/arch-run.bash
> @@ -133,3 +133,25 @@ migration_cmd ()
>  		echo "run_migration"
>  	fi
>  }
> +
> +# qemu binary search function for all arches
> +qemu_binary ()
> +{
> +    PATH=$PATH:/usr/libexec
> +    qemubinarysearch="${QEMU:-qemu-system-$ARCH_NAME qemu-kvm}"
> +    for qemucmd in ${qemubinarysearch}
> +    do
> +        unset QEMUFOUND
> +        unset qemu
> +        if ! [ -z "${QEMUFOUND=$(${qemucmd} --help 2>/dev/null  | grep "QEMU")}" ]
> +        then
> +            qemu="${qemucmd}"
> +            break
> +        fi
> +    done
> +
> +    if [ -z "${QEMUFOUND}" ]; then
> +        echo "A QEMU binary was not found, You can set a custom location by using the QEMU=<path> environment variable"
> +        exit 2
> +    fi
> +}
> 



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux