All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements
@ 2018-10-24  9:52 Thomas Huth
  2018-10-24  9:52 ` [Qemu-devel] [PULL 1/6] tests/migration-test: Disable s390x test when running with TCG Thomas Huth
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Thomas Huth @ 2018-10-24  9:52 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

 Hi Peter,

the following changes since commit 13399aad4fa87b2878c49d02a5d3bafa6c966ba3:

  Merge remote-tracking branch 'remotes/armbru/tags/pull-error-2018-10-22' into staging (2018-10-23 17:20:23 +0100)

are available in the git repository at:

  https://gitlab.com/huth/qemu.git tags/pull-request-2018-10-24

for you to fetch changes up to 86583a07c4a7d55b04db5942a70d176f5299144a:

  configure: Provide option to explicitly disable AVX2 (2018-10-24 07:39:10 +0100)

----------------------------------------------------------------
- Disable migration-test with TCG on s390x (since there are known problems)
- Small Makefile improvements
- More modern shell scripting changes (use $() instead of ``)
- Add a configure option to disable AVX2
----------------------------------------------------------------

Liam Merwick (1):
      configure: Provide option to explicitly disable AVX2

Mao Zhongyi (2):
      debian-bootstrap.pre: Modern shell scripting (use $() instead of ``)
      po/Makefile: Modern shell scripting (use $() instead of ``)

Thomas Huth (3):
      tests/migration-test: Disable s390x test when running with TCG
      hw/core: Move null-machine into the common-obj list
      configs: Add a CONFIG_SMC37C669 switch for the "smc37c669-superio" device

 configure                                     | 11 +++++++++--
 default-configs/alpha-softmmu.mak             |  1 +
 hw/core/Makefile.objs                         |  3 +--
 hw/core/null-machine.c                        |  2 +-
 hw/isa/Makefile.objs                          |  3 ++-
 po/Makefile                                   |  2 +-
 tests/docker/dockerfiles/debian-bootstrap.pre |  4 ++--
 tests/migration-test.c                        | 16 ++++++++++++++++
 8 files changed, 33 insertions(+), 9 deletions(-)

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

* [Qemu-devel] [PULL 1/6] tests/migration-test: Disable s390x test when running with TCG
  2018-10-24  9:52 [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Thomas Huth
@ 2018-10-24  9:52 ` Thomas Huth
  2018-10-24  9:52 ` [Qemu-devel] [PULL 2/6] hw/core: Move null-machine into the common-obj list Thomas Huth
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Thomas Huth @ 2018-10-24  9:52 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

The migration test for s390x sometimes hangs when running with TCG,
similar to the problems that we have already observed with TCG for
the ppc64 guests. Thus disable the s390x test when we are not running
with KVM for now until the problem with TCG has been resolved.

Reviewed-by: Laurent Vivier <lvivier@redhat.com>
Reviewed-by: Emilio G. Cota <cota@braap.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/migration-test.c | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/tests/migration-test.c b/tests/migration-test.c
index b792025..06ca506 100644
--- a/tests/migration-test.c
+++ b/tests/migration-test.c
@@ -803,6 +803,22 @@ int main(int argc, char **argv)
         return 0;
     }
 
+    /*
+     * Similar to ppc64, s390x seems to be touchy with TCG, so disable it
+     * there until the problems are resolved
+     */
+    if (g_str_equal(qtest_get_arch(), "s390x")) {
+#if defined(HOST_S390X)
+        if (access("/dev/kvm", R_OK | W_OK)) {
+            g_test_message("Skipping test: kvm not available");
+            return 0;
+        }
+#else
+        g_test_message("Skipping test: Need s390x host to work properly");
+        return 0;
+#endif
+    }
+
     tmpfs = mkdtemp(template);
     if (!tmpfs) {
         g_test_message("mkdtemp on path (%s): %s\n", template, strerror(errno));
-- 
1.8.3.1

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

* [Qemu-devel] [PULL 2/6] hw/core: Move null-machine into the common-obj list
  2018-10-24  9:52 [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Thomas Huth
  2018-10-24  9:52 ` [Qemu-devel] [PULL 1/6] tests/migration-test: Disable s390x test when running with TCG Thomas Huth
@ 2018-10-24  9:52 ` Thomas Huth
  2018-10-24  9:52 ` [Qemu-devel] [PULL 3/6] configs: Add a CONFIG_SMC37C669 switch for the "smc37c669-superio" device Thomas Huth
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Thomas Huth @ 2018-10-24  9:52 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

The null-machine code used to be target specific since it used the
target-specific cpu_init() function in the past. But in the recent
commit 2278b93941d42c30e2950 ("Use cpu_create(type) instead of
cpu_init(cpu_model)") this has been change, so that the code now
uses the common cpu_create() function instead. Thus we can put
the null-machine into the common-obj list so that it is compiled
only once for all targets, to save some compilation time.

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 hw/core/Makefile.objs  | 3 +--
 hw/core/null-machine.c | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
index b736ce2..a799c83 100644
--- a/hw/core/Makefile.objs
+++ b/hw/core/Makefile.objs
@@ -21,5 +21,4 @@ common-obj-$(CONFIG_SOFTMMU) += or-irq.o
 common-obj-$(CONFIG_SOFTMMU) += split-irq.o
 common-obj-$(CONFIG_PLATFORM_BUS) += platform-bus.o
 common-obj-$(CONFIG_SOFTMMU) += generic-loader.o
-
-obj-$(CONFIG_SOFTMMU) += null-machine.o
+common-obj-$(CONFIG_SOFTMMU) += null-machine.o
diff --git a/hw/core/null-machine.c b/hw/core/null-machine.c
index cde4d3e..76d3f8e 100644
--- a/hw/core/null-machine.c
+++ b/hw/core/null-machine.c
@@ -18,7 +18,7 @@
 #include "hw/boards.h"
 #include "sysemu/sysemu.h"
 #include "exec/address-spaces.h"
-#include "cpu.h"
+#include "qom/cpu.h"
 
 static void machine_none_init(MachineState *mch)
 {
-- 
1.8.3.1

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

* [Qemu-devel] [PULL 3/6] configs: Add a CONFIG_SMC37C669 switch for the "smc37c669-superio" device
  2018-10-24  9:52 [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Thomas Huth
  2018-10-24  9:52 ` [Qemu-devel] [PULL 1/6] tests/migration-test: Disable s390x test when running with TCG Thomas Huth
  2018-10-24  9:52 ` [Qemu-devel] [PULL 2/6] hw/core: Move null-machine into the common-obj list Thomas Huth
@ 2018-10-24  9:52 ` Thomas Huth
  2018-10-24  9:52 ` [Qemu-devel] [PULL 4/6] debian-bootstrap.pre: Modern shell scripting (use $() instead of ``) Thomas Huth
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Thomas Huth @ 2018-10-24  9:52 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

This device is not user-creatable and currently only used for the
"alpha" target. So if the user does not want to compile alpha-softmmu,
we should also not compile this device. Add a proper config switch to
be able to compile this more flexibly.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 default-configs/alpha-softmmu.mak | 1 +
 hw/isa/Makefile.objs              | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/default-configs/alpha-softmmu.mak b/default-configs/alpha-softmmu.mak
index bbe361f..eb58b40 100644
--- a/default-configs/alpha-softmmu.mak
+++ b/default-configs/alpha-softmmu.mak
@@ -19,3 +19,4 @@ CONFIG_IDE_CMD646=y
 CONFIG_I8259=y
 CONFIG_MC146818RTC=y
 CONFIG_ISA_TESTDEV=y
+CONFIG_SMC37C669=y
diff --git a/hw/isa/Makefile.objs b/hw/isa/Makefile.objs
index 83e06f6..9e106df 100644
--- a/hw/isa/Makefile.objs
+++ b/hw/isa/Makefile.objs
@@ -1,9 +1,10 @@
 common-obj-$(CONFIG_ISA_BUS) += isa-bus.o
-common-obj-$(CONFIG_ISA_BUS) += isa-superio.o smc37c669-superio.o
+common-obj-$(CONFIG_ISA_BUS) += isa-superio.o
 common-obj-$(CONFIG_APM) += apm.o
 common-obj-$(CONFIG_I82378) += i82378.o
 common-obj-$(CONFIG_PC87312) += pc87312.o
 common-obj-$(CONFIG_PIIX4) += piix4.o
 common-obj-$(CONFIG_VT82C686) += vt82c686.o
+common-obj-$(CONFIG_SMC37C669) += smc37c669-superio.o
 
 obj-$(CONFIG_LPC_ICH9) += lpc_ich9.o
-- 
1.8.3.1

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

* [Qemu-devel] [PULL 4/6] debian-bootstrap.pre: Modern shell scripting (use $() instead of ``)
  2018-10-24  9:52 [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Thomas Huth
                   ` (2 preceding siblings ...)
  2018-10-24  9:52 ` [Qemu-devel] [PULL 3/6] configs: Add a CONFIG_SMC37C669 switch for the "smc37c669-superio" device Thomas Huth
@ 2018-10-24  9:52 ` Thomas Huth
  2018-10-24  9:52 ` [Qemu-devel] [PULL 5/6] po/Makefile: " Thomas Huth
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Thomas Huth @ 2018-10-24  9:52 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

From: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>

Various shell files contain a mix between obsolete ``
and modern $(); It would be nice to convert to using $()
everywhere.

Signed-off-by: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Tested-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/docker/dockerfiles/debian-bootstrap.pre | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/docker/dockerfiles/debian-bootstrap.pre b/tests/docker/dockerfiles/debian-bootstrap.pre
index 3b0ef95..c164778 100755
--- a/tests/docker/dockerfiles/debian-bootstrap.pre
+++ b/tests/docker/dockerfiles/debian-bootstrap.pre
@@ -2,7 +2,7 @@
 #
 # Simple wrapper for debootstrap, run in the docker build context
 #
-FAKEROOT=`which fakeroot 2> /dev/null`
+FAKEROOT=$(which fakeroot 2> /dev/null)
 # debootstrap < 1.0.67 generates empty sources.list, see Debian#732255
 MIN_DEBOOTSTRAP_VERSION=1.0.67
 
@@ -52,7 +52,7 @@ fi
 
 if [ -z $DEBOOTSTRAP_DIR ]; then
     NEED_DEBOOTSTRAP=false
-    DEBOOTSTRAP=`which debootstrap 2> /dev/null`
+    DEBOOTSTRAP=$(which debootstrap 2> /dev/null)
     if [ -z $DEBOOTSTRAP ]; then
         echo "No debootstrap installed, attempting to install from SCM"
         NEED_DEBOOTSTRAP=true
-- 
1.8.3.1

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

* [Qemu-devel] [PULL 5/6] po/Makefile: Modern shell scripting (use $() instead of ``)
  2018-10-24  9:52 [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Thomas Huth
                   ` (3 preceding siblings ...)
  2018-10-24  9:52 ` [Qemu-devel] [PULL 4/6] debian-bootstrap.pre: Modern shell scripting (use $() instead of ``) Thomas Huth
@ 2018-10-24  9:52 ` Thomas Huth
  2018-10-24  9:52 ` [Qemu-devel] [PULL 6/6] configure: Provide option to explicitly disable AVX2 Thomas Huth
  2018-10-24 15:32 ` [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Peter Maydell
  6 siblings, 0 replies; 8+ messages in thread
From: Thomas Huth @ 2018-10-24  9:52 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

From: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>

Various shell files contain a mix between obsolete ``
and modern $(); It would be nice to convert to using $()
everywhere.

Signed-off-by: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 po/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/po/Makefile b/po/Makefile
index e47e262..c041f4c 100644
--- a/po/Makefile
+++ b/po/Makefile
@@ -36,7 +36,7 @@ clean:
 
 install: $(OBJS)
 	for obj in $(OBJS); do \
-	    base=`basename $$obj .mo`; \
+	    base=$$(basename $$obj .mo); \
 	    $(INSTALL) -d $(DESTDIR)$(prefix)/share/locale/$$base/LC_MESSAGES; \
 	    $(INSTALL) -m644 $$obj $(DESTDIR)$(prefix)/share/locale/$$base/LC_MESSAGES/qemu.mo; \
 	done
-- 
1.8.3.1

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

* [Qemu-devel] [PULL 6/6] configure: Provide option to explicitly disable AVX2
  2018-10-24  9:52 [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Thomas Huth
                   ` (4 preceding siblings ...)
  2018-10-24  9:52 ` [Qemu-devel] [PULL 5/6] po/Makefile: " Thomas Huth
@ 2018-10-24  9:52 ` Thomas Huth
  2018-10-24 15:32 ` [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Peter Maydell
  6 siblings, 0 replies; 8+ messages in thread
From: Thomas Huth @ 2018-10-24  9:52 UTC (permalink / raw)
  To: Peter Maydell; +Cc: qemu-devel

From: Liam Merwick <Liam.Merwick@oracle.com>

The configure script detects if the compiler has AVX2 support and
automatically sets avx2_opt="yes" which in turn defines CONFIG_AVX2_OPT.
There is no way of explicitly overriding this setting so this commit adds
two command-line options: --enable-avx2 and --disable-avx2.

The default behaviour, when no option is specified, is to maintain the
current behaviour and enable AVX2 if the compiler supports it.

Signed-off-by: Liam Merwick <Liam.Merwick@oracle.com>
Reviewed-by: Darren Kenny <Darren.Kenny@oracle.com>
Reviewed-by: Mark Kanda <Mark.Kanda@oracle.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 configure | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/configure b/configure
index e39f63d..1ee09bd 100755
--- a/configure
+++ b/configure
@@ -428,7 +428,7 @@ usb_redir=""
 opengl=""
 opengl_dmabuf="no"
 cpuid_h="no"
-avx2_opt="no"
+avx2_opt=""
 zlib="yes"
 capstone=""
 lzo=""
@@ -1329,6 +1329,10 @@ for opt do
   ;;
   --disable-glusterfs) glusterfs="no"
   ;;
+  --disable-avx2) avx2_opt="no"
+  ;;
+  --enable-avx2) avx2_opt="yes"
+  ;;
   --enable-glusterfs) glusterfs="yes"
   ;;
   --disable-virtio-blk-data-plane|--enable-virtio-blk-data-plane)
@@ -1703,6 +1707,7 @@ disabled with --disable-FEATURE, default is enabled if available:
   libxml2         for Parallels image format
   tcmalloc        tcmalloc support
   jemalloc        jemalloc support
+  avx2            AVX2 optimization support
   replication     replication support
   vhost-vsock     virtio sockets device support
   opengl          opengl support
@@ -5032,7 +5037,7 @@ fi
 # There is no point enabling this if cpuid.h is not usable,
 # since we won't be able to select the new routines.
 
-if test $cpuid_h = yes; then
+if test "$cpuid_h" = "yes" -a "$avx2_opt" != "no"; then
   cat > $TMPC << EOF
 #pragma GCC push_options
 #pragma GCC target("avx2")
@@ -5046,6 +5051,8 @@ int main(int argc, char *argv[]) { return bar(argv[0]); }
 EOF
   if compile_object "" ; then
     avx2_opt="yes"
+  else
+    avx2_opt="no"
   fi
 fi
 
-- 
1.8.3.1

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

* Re: [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements
  2018-10-24  9:52 [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Thomas Huth
                   ` (5 preceding siblings ...)
  2018-10-24  9:52 ` [Qemu-devel] [PULL 6/6] configure: Provide option to explicitly disable AVX2 Thomas Huth
@ 2018-10-24 15:32 ` Peter Maydell
  6 siblings, 0 replies; 8+ messages in thread
From: Peter Maydell @ 2018-10-24 15:32 UTC (permalink / raw)
  To: Thomas Huth; +Cc: QEMU Developers

On 24 October 2018 at 10:52, Thomas Huth <thuth@redhat.com> wrote:
>  Hi Peter,
>
> the following changes since commit 13399aad4fa87b2878c49d02a5d3bafa6c966ba3:
>
>   Merge remote-tracking branch 'remotes/armbru/tags/pull-error-2018-10-22' into staging (2018-10-23 17:20:23 +0100)
>
> are available in the git repository at:
>
>   https://gitlab.com/huth/qemu.git tags/pull-request-2018-10-24
>
> for you to fetch changes up to 86583a07c4a7d55b04db5942a70d176f5299144a:
>
>   configure: Provide option to explicitly disable AVX2 (2018-10-24 07:39:10 +0100)
>
> ----------------------------------------------------------------
> - Disable migration-test with TCG on s390x (since there are known problems)
> - Small Makefile improvements
> - More modern shell scripting changes (use $() instead of ``)
> - Add a configure option to disable AVX2
> ----------------------------------------------------------------



Applied, thanks.

-- PMM

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

end of thread, other threads:[~2018-10-24 15:32 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-24  9:52 [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Thomas Huth
2018-10-24  9:52 ` [Qemu-devel] [PULL 1/6] tests/migration-test: Disable s390x test when running with TCG Thomas Huth
2018-10-24  9:52 ` [Qemu-devel] [PULL 2/6] hw/core: Move null-machine into the common-obj list Thomas Huth
2018-10-24  9:52 ` [Qemu-devel] [PULL 3/6] configs: Add a CONFIG_SMC37C669 switch for the "smc37c669-superio" device Thomas Huth
2018-10-24  9:52 ` [Qemu-devel] [PULL 4/6] debian-bootstrap.pre: Modern shell scripting (use $() instead of ``) Thomas Huth
2018-10-24  9:52 ` [Qemu-devel] [PULL 5/6] po/Makefile: " Thomas Huth
2018-10-24  9:52 ` [Qemu-devel] [PULL 6/6] configure: Provide option to explicitly disable AVX2 Thomas Huth
2018-10-24 15:32 ` [Qemu-devel] [PULL 0/6] qtest, Makefiles and shell script improvements Peter Maydell

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.