All of lore.kernel.org
 help / color / mirror / Atom feed
* [PULL 0/7] s390x, tests and misc patches
@ 2022-03-07 18:26 Thomas Huth
  2022-03-07 18:26 ` [PULL 1/7] tests/tcg/s390x: Fix mvc, mvo and pack tests with Clang Thomas Huth
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Thomas Huth @ 2022-03-07 18:26 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell

 Hi Peter!

The following changes since commit 9d662a6b22a0838a85c5432385f35db2488a33a5:

  Merge remote-tracking branch 'remotes/legoater/tags/pull-ppc-20220305' into staging (2022-03-05 18:03:15 +0000)

are available in the Git repository at:

  https://gitlab.com/thuth/qemu.git tags/pull-request-2022-03-07

for you to fetch changes up to 818e1636080768749dc826acd4825e71828ec7e6:

  Check and report for incomplete 'global' option format (2022-03-07 19:00:05 +0100)

----------------------------------------------------------------
* Fixes for s390x TCG tests
* Update Haiku VM to a usable level
* Some other miscellaneous small fixes

----------------------------------------------------------------
David Miller (1):
      tests/tcg/s390x: Cleanup of mie3 tests.

Rohit Kumar (1):
      Check and report for incomplete 'global' option format

Thomas Huth (5):
      tests/tcg/s390x: Fix mvc, mvo and pack tests with Clang
      tests/tcg/s390x: Fix the exrl-trt* tests with Clang
      MAINTAINERS: Update the files in the FreeBSD section
      tests/avocado: Cancel BootLinux tests in case there is no free port
      tests/vm: Update haiku test vm to R1/Beta3

 MAINTAINERS                            |  3 ++-
 softmmu/qdev-monitor.c                 |  7 +++++++
 tests/avocado/avocado_qemu/__init__.py |  2 ++
 tests/tcg/s390x/exrl-trt.c             |  8 +++-----
 tests/tcg/s390x/exrl-trtr.c            |  8 +++-----
 tests/tcg/s390x/mie3-mvcrl.c           | 10 ++++++----
 tests/tcg/s390x/mie3-sel.c             | 35 +++++++++++++++-------------------
 tests/tcg/s390x/mvc.c                  |  4 ++--
 tests/tcg/s390x/mvo.c                  |  4 ++--
 tests/tcg/s390x/pack.c                 |  2 +-
 tests/vm/haiku.x86_64                  |  8 ++++----
 11 files changed, 47 insertions(+), 44 deletions(-)



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

* [PULL 1/7] tests/tcg/s390x: Fix mvc, mvo and pack tests with Clang
  2022-03-07 18:26 [PULL 0/7] s390x, tests and misc patches Thomas Huth
@ 2022-03-07 18:26 ` Thomas Huth
  2022-03-07 18:26 ` [PULL 2/7] tests/tcg/s390x: Fix the exrl-trt* " Thomas Huth
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2022-03-07 18:26 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Richard Henderson, David Hildenbrand

These instructions use addressing with a "base address", meaning
that if register r0 is used, it is always treated as zero, no matter
what value is stored in the register. So we have to make sure not
to use register r0 for these instructions in our tests. There was
no problem with GCC so far since it seems to always pick other
registers by default, but Clang likes to chose register r0, too,
so we have to use the "a" constraint to make sure that it does
not pick r0 here.

Message-Id: <20220301093911.1450719-1-thuth@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/tcg/s390x/mvc.c  | 4 ++--
 tests/tcg/s390x/mvo.c  | 4 ++--
 tests/tcg/s390x/pack.c | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/tests/tcg/s390x/mvc.c b/tests/tcg/s390x/mvc.c
index aa552d52e5..7ae4c44550 100644
--- a/tests/tcg/s390x/mvc.c
+++ b/tests/tcg/s390x/mvc.c
@@ -20,8 +20,8 @@ static inline void mvc_256(const char *dst, const char *src)
     asm volatile (
         "    mvc 0(256,%[dst]),0(%[src])\n"
         :
-        : [dst] "d" (dst),
-          [src] "d" (src)
+        : [dst] "a" (dst),
+          [src] "a" (src)
         : "memory");
 }
 
diff --git a/tests/tcg/s390x/mvo.c b/tests/tcg/s390x/mvo.c
index 5546fe2a97..0c3ecdde2e 100644
--- a/tests/tcg/s390x/mvo.c
+++ b/tests/tcg/s390x/mvo.c
@@ -11,8 +11,8 @@ int main(void)
     asm volatile (
         "    mvo 0(4,%[dest]),0(3,%[src])\n"
         :
-        : [dest] "d" (dest + 1),
-          [src] "d" (src + 1)
+        : [dest] "a" (dest + 1),
+          [src] "a" (src + 1)
         : "memory");
 
     for (i = 0; i < sizeof(expected); i++) {
diff --git a/tests/tcg/s390x/pack.c b/tests/tcg/s390x/pack.c
index 4be36f29a7..55e7e214e8 100644
--- a/tests/tcg/s390x/pack.c
+++ b/tests/tcg/s390x/pack.c
@@ -9,7 +9,7 @@ int main(void)
     asm volatile(
         "    pack 2(4,%[data]),2(4,%[data])\n"
         :
-        : [data] "r" (&data[0])
+        : [data] "a" (&data[0])
         : "memory");
     for (i = 0; i < 8; i++) {
         if (data[i] != exp[i]) {
-- 
2.27.0



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

* [PULL 2/7] tests/tcg/s390x: Fix the exrl-trt* tests with Clang
  2022-03-07 18:26 [PULL 0/7] s390x, tests and misc patches Thomas Huth
  2022-03-07 18:26 ` [PULL 1/7] tests/tcg/s390x: Fix mvc, mvo and pack tests with Clang Thomas Huth
@ 2022-03-07 18:26 ` Thomas Huth
  2022-03-07 18:26 ` [PULL 3/7] tests/tcg/s390x: Cleanup of mie3 tests Thomas Huth
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2022-03-07 18:26 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Richard Henderson, David Hildenbrand

The exrl-trt* tests use two pre-initialized variables for the
results of the assembly code:

    uint64_t r1 = 0xffffffffffffffffull;
    uint64_t r2 = 0xffffffffffffffffull;

But then the assembly code copies over the full contents
of the register into the output variable, without taking
care of this pre-initialized values:

        "    lgr %[r1],%%r1\n"
        "    lgr %[r2],%%r2\n"

The code then finally compares the register contents to
a value that apparently depends on the pre-initialized values:

    if (r2 != 0xffffffffffffffaaull) {
        write(1, "bad r2\n", 7);
        return 1;
    }

This all works with GCC, since the 0xffffffffffffffff got into
the r2 register there by accident, but it fails completely with
Clang.

Let's fix this by declaring the r1 and r2 variables as proper
register variables instead, so the pre-initialized values get
correctly passed into the inline assembly code.

Message-Id: <20220301092431.1448419-1-thuth@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/tcg/s390x/exrl-trt.c  | 8 +++-----
 tests/tcg/s390x/exrl-trtr.c | 8 +++-----
 2 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/tests/tcg/s390x/exrl-trt.c b/tests/tcg/s390x/exrl-trt.c
index 16711a3181..451f777b9d 100644
--- a/tests/tcg/s390x/exrl-trt.c
+++ b/tests/tcg/s390x/exrl-trt.c
@@ -5,8 +5,8 @@ int main(void)
 {
     char op1[] = "hello";
     char op2[256];
-    uint64_t r1 = 0xffffffffffffffffull;
-    uint64_t r2 = 0xffffffffffffffffull;
+    register uint64_t r1 asm("r1") = 0xffffffffffffffffull;
+    register uint64_t r2 asm("r2") = 0xffffffffffffffffull;
     uint64_t cc;
     int i;
 
@@ -21,8 +21,6 @@ int main(void)
         "    j 2f\n"
         "1:  trt 0(1,%[op1]),%[op2]\n"
         "2:  exrl %[op1_len],1b\n"
-        "    lgr %[r1],%%r1\n"
-        "    lgr %[r2],%%r2\n"
         "    ipm %[cc]\n"
         : [r1] "+r" (r1),
           [r2] "+r" (r2),
@@ -30,7 +28,7 @@ int main(void)
         : [op1] "a" (&op1),
           [op1_len] "a" (5),
           [op2] "Q" (op2)
-        : "r1", "r2", "cc");
+        : "cc");
     cc = (cc >> 28) & 3;
     if (cc != 2) {
         write(1, "bad cc\n", 7);
diff --git a/tests/tcg/s390x/exrl-trtr.c b/tests/tcg/s390x/exrl-trtr.c
index 5f30cda6bd..422f7f385a 100644
--- a/tests/tcg/s390x/exrl-trtr.c
+++ b/tests/tcg/s390x/exrl-trtr.c
@@ -5,8 +5,8 @@ int main(void)
 {
     char op1[] = {0, 1, 2, 3};
     char op2[256];
-    uint64_t r1 = 0xffffffffffffffffull;
-    uint64_t r2 = 0xffffffffffffffffull;
+    register uint64_t r1 asm("r1") = 0xffffffffffffffffull;
+    register uint64_t r2 asm("r2") = 0xffffffffffffffffull;
     uint64_t cc;
     int i;
 
@@ -21,8 +21,6 @@ int main(void)
         "    j 2f\n"
         "1:  trtr 3(1,%[op1]),%[op2]\n"
         "2:  exrl %[op1_len],1b\n"
-        "    lgr %[r1],%%r1\n"
-        "    lgr %[r2],%%r2\n"
         "    ipm %[cc]\n"
         : [r1] "+r" (r1),
           [r2] "+r" (r2),
@@ -30,7 +28,7 @@ int main(void)
         : [op1] "a" (&op1),
           [op1_len] "a" (3),
           [op2] "Q" (op2)
-        : "r1", "r2", "cc");
+        : "cc");
     cc = (cc >> 28) & 3;
     if (cc != 1) {
         write(1, "bad cc\n", 7);
-- 
2.27.0



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

* [PULL 3/7] tests/tcg/s390x: Cleanup of mie3 tests.
  2022-03-07 18:26 [PULL 0/7] s390x, tests and misc patches Thomas Huth
  2022-03-07 18:26 ` [PULL 1/7] tests/tcg/s390x: Fix mvc, mvo and pack tests with Clang Thomas Huth
  2022-03-07 18:26 ` [PULL 2/7] tests/tcg/s390x: Fix the exrl-trt* " Thomas Huth
@ 2022-03-07 18:26 ` Thomas Huth
  2022-03-07 18:26 ` [PULL 4/7] MAINTAINERS: Update the files in the FreeBSD section Thomas Huth
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2022-03-07 18:26 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Richard Henderson, David Miller

From: David Miller <dmiller423@gmail.com>

Adds clobbers and merges remaining separate asm statements.

Signed-off-by: David Miller <dmiller423@gmail.com>
Message-Id: <20220301214305.2778-1-dmiller423@gmail.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
[thuth: dropped changes to mie3-compl.c, whitespace fixes]
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/tcg/s390x/mie3-mvcrl.c | 10 ++++++----
 tests/tcg/s390x/mie3-sel.c   | 35 +++++++++++++++--------------------
 2 files changed, 21 insertions(+), 24 deletions(-)

diff --git a/tests/tcg/s390x/mie3-mvcrl.c b/tests/tcg/s390x/mie3-mvcrl.c
index 57b08e48d0..93c7b0a290 100644
--- a/tests/tcg/s390x/mie3-mvcrl.c
+++ b/tests/tcg/s390x/mie3-mvcrl.c
@@ -1,15 +1,17 @@
 #include <stdint.h>
 #include <string.h>
 
+
 static inline void mvcrl_8(const char *dst, const char *src)
 {
     asm volatile (
-    "llill %%r0, 8\n"
-    ".insn sse, 0xE50A00000000, 0(%[dst]), 0(%[src])"
-    : : [dst] "d" (dst), [src] "d" (src)
-    : "memory");
+        "llill %%r0, 8\n"
+        ".insn sse, 0xE50A00000000, 0(%[dst]), 0(%[src])"
+        : : [dst] "d" (dst), [src] "d" (src)
+        : "r0", "memory");
 }
 
+
 int main(int argc, char *argv[])
 {
     const char *alpha = "abcdefghijklmnop";
diff --git a/tests/tcg/s390x/mie3-sel.c b/tests/tcg/s390x/mie3-sel.c
index b0c5c9857d..0dfd532ed4 100644
--- a/tests/tcg/s390x/mie3-sel.c
+++ b/tests/tcg/s390x/mie3-sel.c
@@ -1,32 +1,27 @@
 #include <stdint.h>
 
+
 #define Fi3(S, ASM) uint64_t S(uint64_t a, uint64_t b, uint64_t c) \
-{                            \
-    uint64_t res = 0;        \
-    asm (                    \
-         "lg %%r2, %[a]\n"   \
-         "lg %%r3, %[b]\n"   \
-         "lg %%r0, %[c]\n"   \
-         "ltgr %%r0, %%r0\n" \
-         ASM                 \
-         "stg %%r0, %[res] " \
-         : [res] "=m" (res)  \
-         : [a] "m" (a),      \
-           [b] "m" (b),      \
-           [c] "m" (c)       \
-         : "r0", "r2",       \
-           "r3", "r4"        \
-    );                       \
-    return res;              \
+{                       \
+asm volatile (          \
+    "ltgr %[c], %[c]\n" \
+    ASM                 \
+    : [c] "+r" (c)      \
+    : [a]  "r" (a)      \
+    , [b]  "r" (b)      \
+);                      \
+    return c;           \
 }
 
-Fi3 (_selre,     ".insn rrf, 0xB9F00000, %%r0, %%r3, %%r2, 8\n")
-Fi3 (_selgrz,    ".insn rrf, 0xB9E30000, %%r0, %%r3, %%r2, 8\n")
-Fi3 (_selfhrnz,  ".insn rrf, 0xB9C00000, %%r0, %%r3, %%r2, 7\n")
+Fi3 (_selre,     ".insn rrf, 0xB9F00000, %[c], %[b], %[a], 8\n")
+Fi3 (_selgrz,    ".insn rrf, 0xB9E30000, %[c], %[b], %[a], 8\n")
+Fi3 (_selfhrnz,  ".insn rrf, 0xB9C00000, %[c], %[b], %[a], 7\n")
+
 
 int main(int argc, char *argv[])
 {
     uint64_t a = ~0, b = ~0, c = ~0;
+
     a =    _selre(0x066600000066ull, 0x066600000006ull, a);
     b =   _selgrz(0xF00D00000005ull, 0xF00D00000055ull, b);
     c = _selfhrnz(0x043200000044ull, 0x065400000004ull, c);
-- 
2.27.0



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

* [PULL 4/7] MAINTAINERS: Update the files in the FreeBSD section
  2022-03-07 18:26 [PULL 0/7] s390x, tests and misc patches Thomas Huth
                   ` (2 preceding siblings ...)
  2022-03-07 18:26 ` [PULL 3/7] tests/tcg/s390x: Cleanup of mie3 tests Thomas Huth
@ 2022-03-07 18:26 ` Thomas Huth
  2022-03-07 18:26 ` [PULL 5/7] tests/avocado: Cancel BootLinux tests in case there is no free port Thomas Huth
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2022-03-07 18:26 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell

The FreeBSD CI definitions now reside in other files than .cirrs.yml.
Update the entry in MAINTAINERS accordingly.

Message-Id: <20220217141138.917292-1-thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 MAINTAINERS | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 68adaac373..dd8ad5531b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3608,7 +3608,8 @@ FreeBSD Hosted Continuous Integration
 M: Ed Maste <emaste@freebsd.org>
 M: Li-Wen Hsu <lwhsu@freebsd.org>
 S: Maintained
-F: .cirrus.yml
+F: .gitlab-ci.d/cirrus/freebsd*
+F: tests/vm/freebsd
 W: https://cirrus-ci.com/github/qemu/qemu
 
 Windows Hosted Continuous Integration
-- 
2.27.0



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

* [PULL 5/7] tests/avocado: Cancel BootLinux tests in case there is no free port
  2022-03-07 18:26 [PULL 0/7] s390x, tests and misc patches Thomas Huth
                   ` (3 preceding siblings ...)
  2022-03-07 18:26 ` [PULL 4/7] MAINTAINERS: Update the files in the FreeBSD section Thomas Huth
@ 2022-03-07 18:26 ` Thomas Huth
  2022-03-07 18:26 ` [PULL 6/7] tests/vm: Update haiku test vm to R1/Beta3 Thomas Huth
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2022-03-07 18:26 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Beraldo Leal

The BootLinux tests are currently failing with an ugly python
stack trace on my RHEL8 system since they cannot get a free port
(likely due to the firewall settings on my system). Let's properly
check the return value of find_free_port() instead and cancel the
test gracefully if it cannot get a free port.

Message-Id: <20220228114325.818294-1-thuth@redhat.com>
Reviewed-by: Beraldo Leal <bleal@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/avocado/avocado_qemu/__init__.py | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tests/avocado/avocado_qemu/__init__.py b/tests/avocado/avocado_qemu/__init__.py
index 75063c0c30..9b056b5ce5 100644
--- a/tests/avocado/avocado_qemu/__init__.py
+++ b/tests/avocado/avocado_qemu/__init__.py
@@ -603,6 +603,8 @@ def prepare_cloudinit(self, ssh_pubkey=None):
         try:
             cloudinit_iso = os.path.join(self.workdir, 'cloudinit.iso')
             self.phone_home_port = network.find_free_port()
+            if not self.phone_home_port:
+                self.cancel('Failed to get a free port')
             pubkey_content = None
             if ssh_pubkey:
                 with open(ssh_pubkey) as pubkey:
-- 
2.27.0



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

* [PULL 6/7] tests/vm: Update haiku test vm to R1/Beta3
  2022-03-07 18:26 [PULL 0/7] s390x, tests and misc patches Thomas Huth
                   ` (4 preceding siblings ...)
  2022-03-07 18:26 ` [PULL 5/7] tests/avocado: Cancel BootLinux tests in case there is no free port Thomas Huth
@ 2022-03-07 18:26 ` Thomas Huth
  2022-03-07 18:26 ` [PULL 7/7] Check and report for incomplete 'global' option format Thomas Huth
  2022-03-08 19:30 ` [PULL 0/7] s390x, tests and misc patches Peter Maydell
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2022-03-07 18:26 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Alexander von Gluck IV

The old image did not have python3 yet, and thus was not usable
for compiling QEMU anymore.

Suggested-by: Alexander von Gluck IV <kallisti5@unixzen.com>
Message-Id: <20220216154208.2985103-1-kallisti5@unixzen.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/vm/haiku.x86_64 | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/tests/vm/haiku.x86_64 b/tests/vm/haiku.x86_64
index 2eb736dae1..936f7d2ae2 100755
--- a/tests/vm/haiku.x86_64
+++ b/tests/vm/haiku.x86_64
@@ -2,7 +2,7 @@
 #
 # Haiku VM image
 #
-# Copyright 2020 Haiku, Inc.
+# Copyright 2020-2022 Haiku, Inc.
 #
 # Authors:
 #  Alexander von Gluck IV <kallisti5@unixzen.com>
@@ -48,8 +48,8 @@ class HaikuVM(basevm.BaseVM):
     name = "haiku"
     arch = "x86_64"
 
-    link = "https://app.vagrantup.com/haiku-os/boxes/r1beta2-x86_64/versions/20200702/providers/libvirt.box"
-    csum = "41c38b316e0cbdbc66b5dbaf3612b866700a4f35807cb1eb266a5bf83e9e68d5"
+    link = "https://app.vagrantup.com/haiku-os/boxes/r1beta3-x86_64/versions/20220216/providers/libvirt.box"
+    csum = "e67d4aacbcc687013d5cc91990ddd86cc5d70a5d28432ae2691944f8ce5d5041"
 
     poweroff = "shutdown"
 
@@ -99,7 +99,7 @@ class HaikuVM(basevm.BaseVM):
 
         self.print_step("Extracting disk image")
 
-        subprocess.check_call(["tar", "xzf", tarball, "./box.img", "-O"],
+        subprocess.check_call(["tar", "xzf", tarball, "box.img", "-O"],
                               stdout=open(img, 'wb'))
 
         self.print_step("Preparing disk image")
-- 
2.27.0



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

* [PULL 7/7] Check and report for incomplete 'global' option format
  2022-03-07 18:26 [PULL 0/7] s390x, tests and misc patches Thomas Huth
                   ` (5 preceding siblings ...)
  2022-03-07 18:26 ` [PULL 6/7] tests/vm: Update haiku test vm to R1/Beta3 Thomas Huth
@ 2022-03-07 18:26 ` Thomas Huth
  2022-03-08 19:30 ` [PULL 0/7] s390x, tests and misc patches Peter Maydell
  7 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2022-03-07 18:26 UTC (permalink / raw)
  To: qemu-devel; +Cc: Peter Maydell, Markus Armbruster, Rohit Kumar

From: Rohit Kumar <rohit.kumar3@nutanix.com>

Qemu might crash when provided incomplete '-global' option.
For example:
     qemu-system-x86_64 -global driver=isa-fdc
     qemu-system-x86_64: ../../devel/qemu/qapi/string-input-visitor.c:394:
     string_input_visitor_new: Assertion `str' failed.
     Aborted (core dumped)

Fixes: 3751d7c43f795b ("vl: allow full-blown QemuOpts syntax for -global")
Signed-off-by: Rohit Kumar <rohit.kumar3@nutanix.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/604
Message-Id: <20220216071508.412974-1-rohit.kumar3@nutanix.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 softmmu/qdev-monitor.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c
index fe6cf268ff..12fe60c467 100644
--- a/softmmu/qdev-monitor.c
+++ b/softmmu/qdev-monitor.c
@@ -1038,6 +1038,13 @@ int qemu_global_option(const char *str)
     if (!opts) {
         return -1;
     }
+    if (!qemu_opt_get(opts, "driver")
+        || !qemu_opt_get(opts, "property")
+        || !qemu_opt_get(opts, "value")) {
+        error_report("options 'driver', 'property', and 'value'"
+                     " are required");
+        return -1;
+    }
 
     return 0;
 }
-- 
2.27.0



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

* Re: [PULL 0/7] s390x, tests and misc patches
  2022-03-07 18:26 [PULL 0/7] s390x, tests and misc patches Thomas Huth
                   ` (6 preceding siblings ...)
  2022-03-07 18:26 ` [PULL 7/7] Check and report for incomplete 'global' option format Thomas Huth
@ 2022-03-08 19:30 ` Peter Maydell
  7 siblings, 0 replies; 9+ messages in thread
From: Peter Maydell @ 2022-03-08 19:30 UTC (permalink / raw)
  To: Thomas Huth; +Cc: qemu-devel

On Mon, 7 Mar 2022 at 18:26, Thomas Huth <thuth@redhat.com> wrote:
>
>  Hi Peter!
>
> The following changes since commit 9d662a6b22a0838a85c5432385f35db2488a33a5:
>
>   Merge remote-tracking branch 'remotes/legoater/tags/pull-ppc-20220305' into staging (2022-03-05 18:03:15 +0000)
>
> are available in the Git repository at:
>
>   https://gitlab.com/thuth/qemu.git tags/pull-request-2022-03-07
>
> for you to fetch changes up to 818e1636080768749dc826acd4825e71828ec7e6:
>
>   Check and report for incomplete 'global' option format (2022-03-07 19:00:05 +0100)
>
> ----------------------------------------------------------------
> * Fixes for s390x TCG tests
> * Update Haiku VM to a usable level
> * Some other miscellaneous small fixes


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/7.0
for any user-visible changes.

-- PMM


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

end of thread, other threads:[~2022-03-08 19:31 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-07 18:26 [PULL 0/7] s390x, tests and misc patches Thomas Huth
2022-03-07 18:26 ` [PULL 1/7] tests/tcg/s390x: Fix mvc, mvo and pack tests with Clang Thomas Huth
2022-03-07 18:26 ` [PULL 2/7] tests/tcg/s390x: Fix the exrl-trt* " Thomas Huth
2022-03-07 18:26 ` [PULL 3/7] tests/tcg/s390x: Cleanup of mie3 tests Thomas Huth
2022-03-07 18:26 ` [PULL 4/7] MAINTAINERS: Update the files in the FreeBSD section Thomas Huth
2022-03-07 18:26 ` [PULL 5/7] tests/avocado: Cancel BootLinux tests in case there is no free port Thomas Huth
2022-03-07 18:26 ` [PULL 6/7] tests/vm: Update haiku test vm to R1/Beta3 Thomas Huth
2022-03-07 18:26 ` [PULL 7/7] Check and report for incomplete 'global' option format Thomas Huth
2022-03-08 19:30 ` [PULL 0/7] s390x, tests and misc patches 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.