Message ID | 20220317165601.356466-1-alexandru.elisei@arm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [kvm-unit-tests] arm/run: Use TCG with qemu-system-arm on arm64 systems | expand |
On Thu, Mar 17, 2022 at 04:56:01PM +0000, Alexandru Elisei wrote: > From: Andrew Jones <drjones@redhat.com> > > If the user sets QEMU=qemu-system-arm on arm64 systems, the tests can only > be run by using the TCG accelerator. In this case use TCG instead of KVM. > > Signed-off-by: Andrew Jones <drjones@redhat.com> > [ Alex E: Added commit message ] > Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com> > --- > arm/run | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/arm/run b/arm/run > index 28a0b4ad2729..128489125dcb 100755 > --- a/arm/run > +++ b/arm/run > @@ -10,16 +10,24 @@ if [ -z "$KUT_STANDALONE" ]; then > fi > processor="$PROCESSOR" > > -ACCEL=$(get_qemu_accelerator) || > +accel=$(get_qemu_accelerator) || > exit $? > > -if [ "$ACCEL" = "kvm" ]; then > +if [ "$accel" = "kvm" ]; then > QEMU_ARCH=$HOST > fi > > qemu=$(search_qemu_binary) || > exit $? > > +if [ "$QEMU" ] && [ -z "$ACCEL" ] && > + [ "$HOST" = "aarch64" ] && [ "$ARCH" = "arm" ] && > + [ "$(basename $QEMU)" = "qemu-system-arm" ]; then > + accel=tcg > +fi > + > +ACCEL=$accel > + > if ! $qemu -machine '?' 2>&1 | grep 'ARM Virtual Machine' > /dev/null; then > echo "$qemu doesn't support mach-virt ('-machine virt'). Exiting." > exit 2 > -- > 2.35.1 > Ha, OK, I guess you posting this is a strong vote in favor of this behavior. I've queued it https://gitlab.com/rhdrjones/kvm-unit-tests/-/commits/arm/queue Thanks, drew
Hi, On Thu, Mar 17, 2022 at 06:45:07PM +0100, Andrew Jones wrote: > On Thu, Mar 17, 2022 at 04:56:01PM +0000, Alexandru Elisei wrote: > > From: Andrew Jones <drjones@redhat.com> > > > > If the user sets QEMU=qemu-system-arm on arm64 systems, the tests can only > > be run by using the TCG accelerator. In this case use TCG instead of KVM. > > > > Signed-off-by: Andrew Jones <drjones@redhat.com> > > [ Alex E: Added commit message ] > > Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com> > > --- > > arm/run | 12 ++++++++++-- > > 1 file changed, 10 insertions(+), 2 deletions(-) > > > > diff --git a/arm/run b/arm/run > > index 28a0b4ad2729..128489125dcb 100755 > > --- a/arm/run > > +++ b/arm/run > > @@ -10,16 +10,24 @@ if [ -z "$KUT_STANDALONE" ]; then > > fi > > processor="$PROCESSOR" > > > > -ACCEL=$(get_qemu_accelerator) || > > +accel=$(get_qemu_accelerator) || > > exit $? > > > > -if [ "$ACCEL" = "kvm" ]; then > > +if [ "$accel" = "kvm" ]; then > > QEMU_ARCH=$HOST > > fi > > > > qemu=$(search_qemu_binary) || > > exit $? > > > > +if [ "$QEMU" ] && [ -z "$ACCEL" ] && > > + [ "$HOST" = "aarch64" ] && [ "$ARCH" = "arm" ] && > > + [ "$(basename $QEMU)" = "qemu-system-arm" ]; then > > + accel=tcg > > +fi > > + > > +ACCEL=$accel > > + > > if ! $qemu -machine '?' 2>&1 | grep 'ARM Virtual Machine' > /dev/null; then > > echo "$qemu doesn't support mach-virt ('-machine virt'). Exiting." > > exit 2 > > -- > > 2.35.1 > > > > Ha, OK, I guess you posting this is a strong vote in favor of this > behavior. I've queued it Ah, yes, maybe I should've been more clear about it. I think this is more intuitive for the new users who might not be very familiar with run_tests.sh internals, and like you've said it won't break existing users who had to set ACCEL=tcg to get the desired behaviour anyway. Thanks you for queueing it so fast! Should probably have also mentioned this as a comment in the commit, but I take full responsibility for breaking stuff. Alex > > https://gitlab.com/rhdrjones/kvm-unit-tests/-/commits/arm/queue > > Thanks, > drew >
On Thu, Mar 17, 2022 at 06:03:07PM +0000, Alexandru Elisei wrote: > Hi, > > On Thu, Mar 17, 2022 at 06:45:07PM +0100, Andrew Jones wrote: > > On Thu, Mar 17, 2022 at 04:56:01PM +0000, Alexandru Elisei wrote: > > > From: Andrew Jones <drjones@redhat.com> > > > > > > If the user sets QEMU=qemu-system-arm on arm64 systems, the tests can only > > > be run by using the TCG accelerator. In this case use TCG instead of KVM. > > > > > > Signed-off-by: Andrew Jones <drjones@redhat.com> > > > [ Alex E: Added commit message ] > > > Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com> > > > --- > > > arm/run | 12 ++++++++++-- > > > 1 file changed, 10 insertions(+), 2 deletions(-) > > > > > > diff --git a/arm/run b/arm/run > > > index 28a0b4ad2729..128489125dcb 100755 > > > --- a/arm/run > > > +++ b/arm/run > > > @@ -10,16 +10,24 @@ if [ -z "$KUT_STANDALONE" ]; then > > > fi > > > processor="$PROCESSOR" > > > > > > -ACCEL=$(get_qemu_accelerator) || > > > +accel=$(get_qemu_accelerator) || > > > exit $? > > > > > > -if [ "$ACCEL" = "kvm" ]; then > > > +if [ "$accel" = "kvm" ]; then > > > QEMU_ARCH=$HOST > > > fi > > > > > > qemu=$(search_qemu_binary) || > > > exit $? > > > > > > +if [ "$QEMU" ] && [ -z "$ACCEL" ] && > > > + [ "$HOST" = "aarch64" ] && [ "$ARCH" = "arm" ] && > > > + [ "$(basename $QEMU)" = "qemu-system-arm" ]; then > > > + accel=tcg > > > +fi > > > + > > > +ACCEL=$accel > > > + > > > if ! $qemu -machine '?' 2>&1 | grep 'ARM Virtual Machine' > /dev/null; then > > > echo "$qemu doesn't support mach-virt ('-machine virt'). Exiting." > > > exit 2 > > > -- > > > 2.35.1 > > > > > > > Ha, OK, I guess you posting this is a strong vote in favor of this > > behavior. I've queued it > > Ah, yes, maybe I should've been more clear about it. I think this is more > intuitive for the new users who might not be very familiar with > run_tests.sh internals, and like you've said it won't break existing users > who had to set ACCEL=tcg to get the desired behaviour anyway. > > Thanks you for queueing it so fast! Should probably have also mentioned > this as a comment in the commit, but I take full responsibility for > breaking stuff. > > Alex > > > > > https://gitlab.com/rhdrjones/kvm-unit-tests/-/commits/arm/queue I finally merged this. Thanks, drew
diff --git a/arm/run b/arm/run index 28a0b4ad2729..128489125dcb 100755 --- a/arm/run +++ b/arm/run @@ -10,16 +10,24 @@ if [ -z "$KUT_STANDALONE" ]; then fi processor="$PROCESSOR" -ACCEL=$(get_qemu_accelerator) || +accel=$(get_qemu_accelerator) || exit $? -if [ "$ACCEL" = "kvm" ]; then +if [ "$accel" = "kvm" ]; then QEMU_ARCH=$HOST fi qemu=$(search_qemu_binary) || exit $? +if [ "$QEMU" ] && [ -z "$ACCEL" ] && + [ "$HOST" = "aarch64" ] && [ "$ARCH" = "arm" ] && + [ "$(basename $QEMU)" = "qemu-system-arm" ]; then + accel=tcg +fi + +ACCEL=$accel + if ! $qemu -machine '?' 2>&1 | grep 'ARM Virtual Machine' > /dev/null; then echo "$qemu doesn't support mach-virt ('-machine virt'). Exiting." exit 2