All of lore.kernel.org
 help / color / mirror / Atom feed
* [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0
@ 2022-12-14 10:08 Thomas Huth
  2022-12-14 10:08 ` [PULL 01/23] s390x/pci: coalesce unmap operations Thomas Huth
                   ` (23 more replies)
  0 siblings, 24 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel

 Hi!

The following changes since commit 5204b499a6cae4dfd9fe762d5e6e82224892383b:

  mailmap: Fix Stefan Weil author email (2022-12-13 15:56:57 -0500)

are available in the Git repository at:

  https://gitlab.com/thuth/qemu.git tags/pull-request-2022-12-14

for you to fetch changes up to 8eeb98e2ea03639e743fdae82ae69d571d8ef0a3:

  tests/qtest/vhost-user-blk-test: don't abort all qtests on missing envar (2022-12-14 08:55:37 +0100)

----------------------------------------------------------------
* s390x PCI fixes and improvements (for the ISM device)
* Fix emulated MVCP and MVCS s390x instructions
* Clean-ups for the e1000e qtest
* Enable qtests on Windows
* Update FreeBSD CI to version 12.4
* Check --disable-tcg for ppc64 in the CI
* Improve scripts/make-releases a little bit
* Many other misc small clean-ups and fixes here and there

----------------------------------------------------------------
Akihiko Odaki (3):
      tests/qtest/libqos/e1000e: Remove "other" interrupts
      tests/qtest/e1000e-test: De-duplicate constants
      tests/qtest/libqos/e1000e: Correctly group register accesses

Bin Meng (4):
      .gitlab-ci.d/windows.yml: Unify the prerequisite packages
      .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent
      .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now
      tests/qtest: Enable qtest build on Windows

Brad Smith (1):
      FreeBSD: Upgrade to 12.4 release

Christian Schoenebeck (1):
      tests/qtest/vhost-user-blk-test: don't abort all qtests on missing envar

Matthew Rosato (3):
      s390x/pci: coalesce unmap operations
      s390x/pci: shrink DMA aperture to be bound by vfio DMA limit
      s390x/pci: reset ISM passthrough devices on shutdown and system reset

Thomas Huth (11):
      target/s390x/tcg/mem_helper: Test the right bits in psw_key_valid()
      target/s390x: The MVCP and MVCS instructions are not privileged
      monitor/misc: Remove superfluous include statements
      scripts/make-release: Add a simple help text for the script
      scripts/make-release: Only clone single branches to speed up the script
      util/qemu-config: Fix "query-command-line-options" to provide the right values
      util/oslib-win32: Remove obsolete reference to g_poll code
      MAINTAINERS: Add documentation files to the corresponding sections
      hw: Include the VMWare devices only in the x86 targets
      gitlab-ci: Check building ppc64 without TCG
      .gitlab/issue_templates: Move suggestions into comments

 include/hw/s390x/s390-pci-bus.h   |   6 ++
 target/s390x/helper.h             |   4 +-
 tests/qtest/libqos/e1000e.h       |   1 -
 target/s390x/tcg/insn-data.h.inc  |   4 +-
 hw/s390x/s390-pci-bus.c           |  28 +++++++
 hw/s390x/s390-pci-inst.c          |  51 ++++++++++++
 hw/s390x/s390-pci-vfio.c          |  13 +++
 monitor/misc.c                    |   6 --
 target/s390x/tcg/mem_helper.c     |  18 ++--
 target/s390x/tcg/translate.c      |   6 +-
 tests/qtest/e1000e-test.c         |  19 ++---
 tests/qtest/libqos/e1000e.c       |   2 +-
 tests/qtest/vhost-user-blk-test.c |   6 ++
 util/oslib-win32.c                |   4 -
 util/qemu-config.c                | 168 +++++++++++++++++---------------------
 .gitlab-ci.d/cirrus.yml           |   2 +-
 .gitlab-ci.d/crossbuilds.yml      |   8 ++
 .gitlab-ci.d/windows.yml          |  35 ++++++--
 .gitlab/issue_templates/bug.md    |  16 ++--
 MAINTAINERS                       |  20 ++++-
 hw/display/Kconfig                |   2 +-
 hw/net/Kconfig                    |   2 +-
 scripts/make-release              |  16 +++-
 tests/qtest/meson.build           |   6 --
 tests/vm/freebsd                  |   4 +-
 25 files changed, 289 insertions(+), 158 deletions(-)



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

* [PULL 01/23] s390x/pci: coalesce unmap operations
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 02/23] s390x/pci: shrink DMA aperture to be bound by vfio DMA limit Thomas Huth
                   ` (22 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Matthew Rosato, Eric Farman

From: Matthew Rosato <mjrosato@linux.ibm.com>

Currently, each unmapped page is handled as an individual iommu
region notification.  Attempt to group contiguous unmap operations
into fewer notifications to reduce overhead.

Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com>
Message-Id: <20221028194758.204007-3-mjrosato@linux.ibm.com>
Reviewed-by: Eric Farman <farman@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 hw/s390x/s390-pci-inst.c | 51 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)

diff --git a/hw/s390x/s390-pci-inst.c b/hw/s390x/s390-pci-inst.c
index 7cc4bcf850..66e764f901 100644
--- a/hw/s390x/s390-pci-inst.c
+++ b/hw/s390x/s390-pci-inst.c
@@ -640,6 +640,8 @@ static uint32_t s390_pci_update_iotlb(S390PCIIOMMU *iommu,
         }
         g_hash_table_remove(iommu->iotlb, &entry->iova);
         inc_dma_avail(iommu);
+        /* Don't notify the iommu yet, maybe we can bundle contiguous unmaps */
+        goto out;
     } else {
         if (cache) {
             if (cache->perm == entry->perm &&
@@ -663,15 +665,44 @@ static uint32_t s390_pci_update_iotlb(S390PCIIOMMU *iommu,
         dec_dma_avail(iommu);
     }
 
+    /*
+     * All associated iotlb entries have already been cleared, trigger the
+     * unmaps.
+     */
     memory_region_notify_iommu(&iommu->iommu_mr, 0, event);
 
 out:
     return iommu->dma_limit ? iommu->dma_limit->avail : 1;
 }
 
+static void s390_pci_batch_unmap(S390PCIIOMMU *iommu, uint64_t iova,
+                                 uint64_t len)
+{
+    uint64_t remain = len, start = iova, end = start + len - 1, mask, size;
+    IOMMUTLBEvent event = {
+        .type = IOMMU_NOTIFIER_UNMAP,
+        .entry = {
+            .target_as = &address_space_memory,
+            .translated_addr = 0,
+            .perm = IOMMU_NONE,
+        },
+    };
+
+    while (remain >= TARGET_PAGE_SIZE) {
+        mask = dma_aligned_pow2_mask(start, end, 64);
+        size = mask + 1;
+        event.entry.iova = start;
+        event.entry.addr_mask = mask;
+        memory_region_notify_iommu(&iommu->iommu_mr, 0, event);
+        start += size;
+        remain -= size;
+    }
+}
+
 int rpcit_service_call(S390CPU *cpu, uint8_t r1, uint8_t r2, uintptr_t ra)
 {
     CPUS390XState *env = &cpu->env;
+    uint64_t iova, coalesce = 0;
     uint32_t fh;
     uint16_t error = 0;
     S390PCIBusDevice *pbdev;
@@ -742,6 +773,21 @@ int rpcit_service_call(S390CPU *cpu, uint8_t r1, uint8_t r2, uintptr_t ra)
             break;
         }
 
+        /*
+         * If this is an unmap of a PTE, let's try to coalesce multiple unmaps
+         * into as few notifier events as possible.
+         */
+        if (entry.perm == IOMMU_NONE && entry.len == TARGET_PAGE_SIZE) {
+            if (coalesce == 0) {
+                iova = entry.iova;
+            }
+            coalesce += entry.len;
+        } else if (coalesce > 0) {
+            /* Unleash the coalesced unmap before processing a new map */
+            s390_pci_batch_unmap(iommu, iova, coalesce);
+            coalesce = 0;
+        }
+
         start += entry.len;
         while (entry.iova < start && entry.iova < end) {
             if (dma_avail > 0 || entry.perm == IOMMU_NONE) {
@@ -759,6 +805,11 @@ int rpcit_service_call(S390CPU *cpu, uint8_t r1, uint8_t r2, uintptr_t ra)
             }
         }
     }
+    if (coalesce) {
+            /* Unleash the coalesced unmap before finishing rpcit */
+            s390_pci_batch_unmap(iommu, iova, coalesce);
+            coalesce = 0;
+    }
     if (again && dma_avail > 0)
         goto retry;
 err:
-- 
2.31.1



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

* [PULL 02/23] s390x/pci: shrink DMA aperture to be bound by vfio DMA limit
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
  2022-12-14 10:08 ` [PULL 01/23] s390x/pci: coalesce unmap operations Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 03/23] s390x/pci: reset ISM passthrough devices on shutdown and system reset Thomas Huth
                   ` (21 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Matthew Rosato, Eric Farman

From: Matthew Rosato <mjrosato@linux.ibm.com>

Currently, s390x-pci performs accounting against the vfio DMA
limit and triggers the guest to clean up mappings when the limit
is reached. Let's go a step further and also limit the size of
the supported DMA aperture reported to the guest based upon the
initial vfio DMA limit reported for the container (if less than
than the size reported by the firmware/host zPCI layer).  This
avoids processing sections of the guest DMA table during global
refresh that, for common use cases, will never be used anway, and
makes exhausting the vfio DMA limit due to mismatch between guest
aperture size and host limit far less likely and more indicitive
of an error.

Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com>
Message-Id: <20221028194758.204007-4-mjrosato@linux.ibm.com>
Reviewed-by: Eric Farman <farman@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 include/hw/s390x/s390-pci-bus.h |  1 +
 hw/s390x/s390-pci-vfio.c        | 11 +++++++++++
 2 files changed, 12 insertions(+)

diff --git a/include/hw/s390x/s390-pci-bus.h b/include/hw/s390x/s390-pci-bus.h
index 0605fcea24..1c46e3a269 100644
--- a/include/hw/s390x/s390-pci-bus.h
+++ b/include/hw/s390x/s390-pci-bus.h
@@ -278,6 +278,7 @@ struct S390PCIIOMMU {
     uint64_t g_iota;
     uint64_t pba;
     uint64_t pal;
+    uint64_t max_dma_limit;
     GHashTable *iotlb;
     S390PCIDMACount *dma_limit;
 };
diff --git a/hw/s390x/s390-pci-vfio.c b/hw/s390x/s390-pci-vfio.c
index 5f0adb0b4a..f7bf36cec8 100644
--- a/hw/s390x/s390-pci-vfio.c
+++ b/hw/s390x/s390-pci-vfio.c
@@ -84,6 +84,7 @@ S390PCIDMACount *s390_pci_start_dma_count(S390pciState *s,
     cnt->users = 1;
     cnt->avail = avail;
     QTAILQ_INSERT_TAIL(&s->zpci_dma_limit, cnt, link);
+    pbdev->iommu->max_dma_limit = avail;
     return cnt;
 }
 
@@ -103,6 +104,7 @@ static void s390_pci_read_base(S390PCIBusDevice *pbdev,
     struct vfio_info_cap_header *hdr;
     struct vfio_device_info_cap_zpci_base *cap;
     VFIOPCIDevice *vpci =  container_of(pbdev->pdev, VFIOPCIDevice, pdev);
+    uint64_t vfio_size;
 
     hdr = vfio_get_device_info_cap(info, VFIO_DEVICE_INFO_CAP_ZPCI_BASE);
 
@@ -122,6 +124,15 @@ static void s390_pci_read_base(S390PCIBusDevice *pbdev,
     /* The following values remain 0 until we support other FMB formats */
     pbdev->zpci_fn.fmbl = 0;
     pbdev->zpci_fn.pft = 0;
+
+    /*
+     * If appropriate, reduce the size of the supported DMA aperture reported
+     * to the guest based upon the vfio DMA limit.
+     */
+    vfio_size = pbdev->iommu->max_dma_limit << TARGET_PAGE_BITS;
+    if (vfio_size < (cap->end_dma - cap->start_dma + 1)) {
+        pbdev->zpci_fn.edma = cap->start_dma + vfio_size - 1;
+    }
 }
 
 static bool get_host_fh(S390PCIBusDevice *pbdev, struct vfio_device_info *info,
-- 
2.31.1



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

* [PULL 03/23] s390x/pci: reset ISM passthrough devices on shutdown and system reset
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
  2022-12-14 10:08 ` [PULL 01/23] s390x/pci: coalesce unmap operations Thomas Huth
  2022-12-14 10:08 ` [PULL 02/23] s390x/pci: shrink DMA aperture to be bound by vfio DMA limit Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 04/23] target/s390x/tcg/mem_helper: Test the right bits in psw_key_valid() Thomas Huth
                   ` (20 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Matthew Rosato, Eric Farman

From: Matthew Rosato <mjrosato@linux.ibm.com>

ISM device firmware stores unique state information that can
can cause a wholesale unmap of the associated IOMMU (e.g. when
we get a termination signal for QEMU) to trigger firmware errors
because firmware believes we are attempting to invalidate entries
that are still in-use by the guest OS (when in fact that guest is
in the process of being terminated or rebooted).
To alleviate this, register both a shutdown notifier (for unexpected
termination cases e.g. virsh destroy) as well as a reset callback
(for cases like guest OS reboot).  For each of these scenarios, trigger
PCI device reset; this is enough to indicate to firmware that the IOMMU
is no longer in-use by the guest OS, making it safe to invalidate any
associated IOMMU entries.

Fixes: 15d0e7942d3b ("s390x/pci: don't fence interpreted devices without MSI-X")
Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com>
Message-Id: <20221209195700.263824-1-mjrosato@linux.ibm.com>
Reviewed-by: Eric Farman <farman@linux.ibm.com>
[thuth: Adjusted the hunk in s390-pci-vfio.c due to different context]
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 include/hw/s390x/s390-pci-bus.h |  5 +++++
 hw/s390x/s390-pci-bus.c         | 28 ++++++++++++++++++++++++++++
 hw/s390x/s390-pci-vfio.c        |  2 ++
 3 files changed, 35 insertions(+)

diff --git a/include/hw/s390x/s390-pci-bus.h b/include/hw/s390x/s390-pci-bus.h
index 1c46e3a269..e0a9f9385b 100644
--- a/include/hw/s390x/s390-pci-bus.h
+++ b/include/hw/s390x/s390-pci-bus.h
@@ -39,6 +39,9 @@
 #define UID_CHECKING_ENABLED 0x01
 #define ZPCI_DTSM 0x40
 
+/* zPCI Function Types */
+#define ZPCI_PFT_ISM 5
+
 OBJECT_DECLARE_SIMPLE_TYPE(S390pciState, S390_PCI_HOST_BRIDGE)
 OBJECT_DECLARE_SIMPLE_TYPE(S390PCIBus, S390_PCI_BUS)
 OBJECT_DECLARE_SIMPLE_TYPE(S390PCIBusDevice, S390_PCI_DEVICE)
@@ -344,6 +347,7 @@ struct S390PCIBusDevice {
     uint16_t noi;
     uint16_t maxstbl;
     uint8_t sum;
+    uint8_t pft;
     S390PCIGroup *pci_group;
     ClpRspQueryPci zpci_fn;
     S390MsixInfo msix;
@@ -352,6 +356,7 @@ struct S390PCIBusDevice {
     MemoryRegion msix_notify_mr;
     IndAddr *summary_ind;
     IndAddr *indicator;
+    Notifier shutdown_notifier;
     bool pci_unplug_request_processed;
     bool unplug_requested;
     bool interp;
diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c
index 977e7daa15..02751f3597 100644
--- a/hw/s390x/s390-pci-bus.c
+++ b/hw/s390x/s390-pci-bus.c
@@ -24,6 +24,8 @@
 #include "hw/pci/msi.h"
 #include "qemu/error-report.h"
 #include "qemu/module.h"
+#include "sysemu/reset.h"
+#include "sysemu/runstate.h"
 
 #ifndef DEBUG_S390PCI_BUS
 #define DEBUG_S390PCI_BUS  0
@@ -150,10 +152,30 @@ out:
     psccb->header.response_code = cpu_to_be16(rc);
 }
 
+static void s390_pci_shutdown_notifier(Notifier *n, void *opaque)
+{
+    S390PCIBusDevice *pbdev = container_of(n, S390PCIBusDevice,
+                                           shutdown_notifier);
+
+    pci_device_reset(pbdev->pdev);
+}
+
+static void s390_pci_reset_cb(void *opaque)
+{
+    S390PCIBusDevice *pbdev = opaque;
+
+    pci_device_reset(pbdev->pdev);
+}
+
 static void s390_pci_perform_unplug(S390PCIBusDevice *pbdev)
 {
     HotplugHandler *hotplug_ctrl;
 
+    if (pbdev->pft == ZPCI_PFT_ISM) {
+        notifier_remove(&pbdev->shutdown_notifier);
+        qemu_unregister_reset(s390_pci_reset_cb, pbdev);
+    }
+
     /* Unplug the PCI device */
     if (pbdev->pdev) {
         DeviceState *pdev = DEVICE(pbdev->pdev);
@@ -1111,6 +1133,12 @@ static void s390_pcihost_plug(HotplugHandler *hotplug_dev, DeviceState *dev,
                 pbdev->fh |= FH_SHM_VFIO;
                 pbdev->forwarding_assist = false;
             }
+            /* Register shutdown notifier and reset callback for ISM devices */
+            if (pbdev->pft == ZPCI_PFT_ISM) {
+                pbdev->shutdown_notifier.notify = s390_pci_shutdown_notifier;
+                qemu_register_shutdown_notifier(&pbdev->shutdown_notifier);
+                qemu_register_reset(s390_pci_reset_cb, pbdev);
+            }
         } else {
             pbdev->fh |= FH_SHM_EMUL;
             /* Always intercept emulated devices */
diff --git a/hw/s390x/s390-pci-vfio.c b/hw/s390x/s390-pci-vfio.c
index f7bf36cec8..f51190d466 100644
--- a/hw/s390x/s390-pci-vfio.c
+++ b/hw/s390x/s390-pci-vfio.c
@@ -124,6 +124,8 @@ static void s390_pci_read_base(S390PCIBusDevice *pbdev,
     /* The following values remain 0 until we support other FMB formats */
     pbdev->zpci_fn.fmbl = 0;
     pbdev->zpci_fn.pft = 0;
+    /* Store function type separately for type-specific behavior */
+    pbdev->pft = cap->pft;
 
     /*
      * If appropriate, reduce the size of the supported DMA aperture reported
-- 
2.31.1



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

* [PULL 04/23] target/s390x/tcg/mem_helper: Test the right bits in psw_key_valid()
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (2 preceding siblings ...)
  2022-12-14 10:08 ` [PULL 03/23] s390x/pci: reset ISM passthrough devices on shutdown and system reset Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 05/23] target/s390x: The MVCP and MVCS instructions are not privileged Thomas Huth
                   ` (19 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Nina Schoetterl-Glausch, David Hildenbrand

The PSW key mask is a 16 bit field, and the psw_key variable is
in the range from 0 to 15, so it does not make sense to use
"0x80 >> psw_key" for testing the bits here. We should use 0x8000
instead.

Message-Id: <20221205142043.95185-1-thuth@redhat.com>
Reviewed-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 target/s390x/tcg/mem_helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target/s390x/tcg/mem_helper.c b/target/s390x/tcg/mem_helper.c
index 3758b9e688..006b6798a7 100644
--- a/target/s390x/tcg/mem_helper.c
+++ b/target/s390x/tcg/mem_helper.c
@@ -51,7 +51,7 @@ static inline bool psw_key_valid(CPUS390XState *env, uint8_t psw_key)
 
     if (env->psw.mask & PSW_MASK_PSTATE) {
         /* PSW key has range 0..15, it is valid if the bit is 1 in the PKM */
-        return pkm & (0x80 >> psw_key);
+        return pkm & (0x8000 >> psw_key);
     }
     return true;
 }
-- 
2.31.1



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

* [PULL 05/23] target/s390x: The MVCP and MVCS instructions are not privileged
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (3 preceding siblings ...)
  2022-12-14 10:08 ` [PULL 04/23] target/s390x/tcg/mem_helper: Test the right bits in psw_key_valid() Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 06/23] monitor/misc: Remove superfluous include statements Thomas Huth
                   ` (18 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Ilya Leoshkevich

The "MOVE TO PRIMARY/SECONDARY" instructions can also be called
from problem state. We just should properly check whether the
secondary-space access key is valid here, too, and inject a
privileged program exception if it is invalid.

Message-Id: <20221205125852.81848-1-thuth@redhat.com>
Reviewed-by: Ilya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 target/s390x/helper.h            |  4 ++--
 target/s390x/tcg/insn-data.h.inc |  4 ++--
 target/s390x/tcg/mem_helper.c    | 16 ++++++++++++----
 target/s390x/tcg/translate.c     |  6 ++++--
 4 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/target/s390x/helper.h b/target/s390x/helper.h
index bf33d86f74..93923ca153 100644
--- a/target/s390x/helper.h
+++ b/target/s390x/helper.h
@@ -353,8 +353,8 @@ DEF_HELPER_FLAGS_3(tprot, TCG_CALL_NO_WG, i32, env, i64, i64)
 DEF_HELPER_2(iske, i64, env, i64)
 DEF_HELPER_3(sske, void, env, i64, i64)
 DEF_HELPER_2(rrbe, i32, env, i64)
-DEF_HELPER_4(mvcs, i32, env, i64, i64, i64)
-DEF_HELPER_4(mvcp, i32, env, i64, i64, i64)
+DEF_HELPER_5(mvcs, i32, env, i64, i64, i64, i64)
+DEF_HELPER_5(mvcp, i32, env, i64, i64, i64, i64)
 DEF_HELPER_4(sigp, i32, env, i64, i32, i32)
 DEF_HELPER_FLAGS_2(sacf, TCG_CALL_NO_WG, void, env, i64)
 DEF_HELPER_FLAGS_4(idte, TCG_CALL_NO_RWG, void, env, i64, i64, i32)
diff --git a/target/s390x/tcg/insn-data.h.inc b/target/s390x/tcg/insn-data.h.inc
index 54d4250c9f..79c6ab509a 100644
--- a/target/s390x/tcg/insn-data.h.inc
+++ b/target/s390x/tcg/insn-data.h.inc
@@ -1355,9 +1355,9 @@
     E(0xb24b, LURA,    RRE,   Z,   0, ra2, new, r1_32, lura, 0, MO_TEUL, IF_PRIV)
     E(0xb905, LURAG,   RRE,   Z,   0, ra2, r1, 0, lura, 0, MO_TEUQ, IF_PRIV)
 /* MOVE TO PRIMARY */
-    F(0xda00, MVCP,    SS_d,  Z,   la1, a2, 0, 0, mvcp, 0, IF_PRIV)
+    C(0xda00, MVCP,    SS_d,  Z,   la1, a2, 0, 0, mvcp, 0)
 /* MOVE TO SECONDARY */
-    F(0xdb00, MVCS,    SS_d,  Z,   la1, a2, 0, 0, mvcs, 0, IF_PRIV)
+    C(0xdb00, MVCS,    SS_d,  Z,   la1, a2, 0, 0, mvcs, 0)
 /* PURGE TLB */
     F(0xb20d, PTLB,    S,     Z,   0, 0, 0, 0, ptlb, 0, IF_PRIV)
 /* RESET REFERENCE BIT EXTENDED */
diff --git a/target/s390x/tcg/mem_helper.c b/target/s390x/tcg/mem_helper.c
index 006b6798a7..cb82cd1c1d 100644
--- a/target/s390x/tcg/mem_helper.c
+++ b/target/s390x/tcg/mem_helper.c
@@ -2295,7 +2295,8 @@ uint32_t HELPER(rrbe)(CPUS390XState *env, uint64_t r2)
     return re >> 1;
 }
 
-uint32_t HELPER(mvcs)(CPUS390XState *env, uint64_t l, uint64_t a1, uint64_t a2)
+uint32_t HELPER(mvcs)(CPUS390XState *env, uint64_t l, uint64_t a1, uint64_t a2,
+                      uint64_t key)
 {
     const uint8_t psw_as = (env->psw.mask & PSW_MASK_ASC) >> PSW_SHIFT_ASC;
     S390Access srca, desta;
@@ -2310,6 +2311,10 @@ uint32_t HELPER(mvcs)(CPUS390XState *env, uint64_t l, uint64_t a1, uint64_t a2)
         s390_program_interrupt(env, PGM_SPECIAL_OP, ra);
     }
 
+    if (!psw_key_valid(env, (key >> 4) & 0xf)) {
+        s390_program_interrupt(env, PGM_PRIVILEGED, ra);
+    }
+
     l = wrap_length32(env, l);
     if (l > 256) {
         /* max 256 */
@@ -2319,14 +2324,14 @@ uint32_t HELPER(mvcs)(CPUS390XState *env, uint64_t l, uint64_t a1, uint64_t a2)
         return cc;
     }
 
-    /* TODO: Access key handling */
     srca = access_prepare(env, a2, l, MMU_DATA_LOAD, MMU_PRIMARY_IDX, ra);
     desta = access_prepare(env, a1, l, MMU_DATA_STORE, MMU_SECONDARY_IDX, ra);
     access_memmove(env, &desta, &srca, ra);
     return cc;
 }
 
-uint32_t HELPER(mvcp)(CPUS390XState *env, uint64_t l, uint64_t a1, uint64_t a2)
+uint32_t HELPER(mvcp)(CPUS390XState *env, uint64_t l, uint64_t a1, uint64_t a2,
+                      uint64_t key)
 {
     const uint8_t psw_as = (env->psw.mask & PSW_MASK_ASC) >> PSW_SHIFT_ASC;
     S390Access srca, desta;
@@ -2341,6 +2346,10 @@ uint32_t HELPER(mvcp)(CPUS390XState *env, uint64_t l, uint64_t a1, uint64_t a2)
         s390_program_interrupt(env, PGM_SPECIAL_OP, ra);
     }
 
+    if (!psw_key_valid(env, (key >> 4) & 0xf)) {
+        s390_program_interrupt(env, PGM_PRIVILEGED, ra);
+    }
+
     l = wrap_length32(env, l);
     if (l > 256) {
         /* max 256 */
@@ -2350,7 +2359,6 @@ uint32_t HELPER(mvcp)(CPUS390XState *env, uint64_t l, uint64_t a1, uint64_t a2)
         return cc;
     }
 
-    /* TODO: Access key handling */
     srca = access_prepare(env, a2, l, MMU_DATA_LOAD, MMU_SECONDARY_IDX, ra);
     desta = access_prepare(env, a1, l, MMU_DATA_STORE, MMU_PRIMARY_IDX, ra);
     access_memmove(env, &desta, &srca, ra);
diff --git a/target/s390x/tcg/translate.c b/target/s390x/tcg/translate.c
index 1e599ac259..a339b277e9 100644
--- a/target/s390x/tcg/translate.c
+++ b/target/s390x/tcg/translate.c
@@ -3476,7 +3476,8 @@ static DisasJumpType op_mvcos(DisasContext *s, DisasOps *o)
 static DisasJumpType op_mvcp(DisasContext *s, DisasOps *o)
 {
     int r1 = get_field(s, l1);
-    gen_helper_mvcp(cc_op, cpu_env, regs[r1], o->addr1, o->in2);
+    int r3 = get_field(s, r3);
+    gen_helper_mvcp(cc_op, cpu_env, regs[r1], o->addr1, o->in2, regs[r3]);
     set_cc_static(s);
     return DISAS_NEXT;
 }
@@ -3484,7 +3485,8 @@ static DisasJumpType op_mvcp(DisasContext *s, DisasOps *o)
 static DisasJumpType op_mvcs(DisasContext *s, DisasOps *o)
 {
     int r1 = get_field(s, l1);
-    gen_helper_mvcs(cc_op, cpu_env, regs[r1], o->addr1, o->in2);
+    int r3 = get_field(s, r3);
+    gen_helper_mvcs(cc_op, cpu_env, regs[r1], o->addr1, o->in2, regs[r3]);
     set_cc_static(s);
     return DISAS_NEXT;
 }
-- 
2.31.1



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

* [PULL 06/23] monitor/misc: Remove superfluous include statements
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (4 preceding siblings ...)
  2022-12-14 10:08 ` [PULL 05/23] target/s390x: The MVCP and MVCS instructions are not privileged Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 07/23] scripts/make-release: Add a simple help text for the script Thomas Huth
                   ` (17 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Markus Armbruster

These #includes are not required anymore (the likely got superfluous
with commit da76ee76f7 - "hmp-commands-info: move info_cmds content
out of monitor.c").

Message-Id: <20221128133514.220919-1-thuth@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 monitor/misc.c | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/monitor/misc.c b/monitor/misc.c
index 205487e2b9..e2c017d69c 100644
--- a/monitor/misc.c
+++ b/monitor/misc.c
@@ -25,10 +25,8 @@
 #include "qemu/osdep.h"
 #include "monitor-internal.h"
 #include "monitor/qdev.h"
-#include "hw/usb.h"
 #include "hw/pci/pci.h"
 #include "sysemu/watchdog.h"
-#include "hw/loader.h"
 #include "exec/gdbstub.h"
 #include "net/net.h"
 #include "net/slirp.h"
@@ -39,16 +37,13 @@
 #include "ui/input.h"
 #include "audio/audio.h"
 #include "disas/disas.h"
-#include "sysemu/balloon.h"
 #include "qemu/timer.h"
 #include "qemu/log.h"
 #include "sysemu/hw_accel.h"
 #include "sysemu/runstate.h"
 #include "authz/list.h"
 #include "qapi/util.h"
-#include "sysemu/blockdev.h"
 #include "sysemu/sysemu.h"
-#include "sysemu/tpm.h"
 #include "sysemu/device_tree.h"
 #include "qapi/qmp/qdict.h"
 #include "qapi/qmp/qerror.h"
@@ -77,7 +72,6 @@
 #include "qapi/qapi-init-commands.h"
 #include "qapi/error.h"
 #include "qapi/qmp-event.h"
-#include "sysemu/cpus.h"
 #include "qemu/cutils.h"
 
 #if defined(TARGET_S390X)
-- 
2.31.1



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

* [PULL 07/23] scripts/make-release: Add a simple help text for the script
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (5 preceding siblings ...)
  2022-12-14 10:08 ` [PULL 06/23] monitor/misc: Remove superfluous include statements Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 08/23] scripts/make-release: Only clone single branches to speed up " Thomas Huth
                   ` (16 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Alex Bennée

Print a simple help text if the script has been called with the
wrong amount of parameters.

Message-Id: <20221128092555.37102-2-thuth@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 scripts/make-release | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/scripts/make-release b/scripts/make-release
index 05b14ecc95..4be9b3b9ce 100755
--- a/scripts/make-release
+++ b/scripts/make-release
@@ -10,6 +10,12 @@
 # This work is licensed under the terms of the GNU GPLv2 or later.
 # See the COPYING file in the top-level directory.
 
+if [ $# -ne 2 ]; then
+    echo "Usage:"
+    echo " $0 gitrepo version"
+    exit 0
+fi
+
 src="$1"
 version="$2"
 destination=qemu-${version}
-- 
2.31.1



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

* [PULL 08/23] scripts/make-release: Only clone single branches to speed up the script
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (6 preceding siblings ...)
  2022-12-14 10:08 ` [PULL 07/23] scripts/make-release: Add a simple help text for the script Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 09/23] util/qemu-config: Fix "query-command-line-options" to provide the right values Thomas Huth
                   ` (15 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Alex Bennée

Using --single-branch and --depth 1 here helps to speed up the process
a little bit and helps to save some networking bandwidth.

Message-Id: <20221128092555.37102-3-thuth@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 scripts/make-release | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/scripts/make-release b/scripts/make-release
index 4be9b3b9ce..44a9d86a04 100755
--- a/scripts/make-release
+++ b/scripts/make-release
@@ -20,10 +20,12 @@ src="$1"
 version="$2"
 destination=qemu-${version}
 
-git clone "${src}" ${destination}
+git clone --single-branch -b "v${version}" -c advice.detachedHead=false \
+    "${src}" ${destination}
+
 pushd ${destination}
-git checkout "v${version}"
-git submodule update --init
+
+git submodule update --init --single-branch
 (cd roms/seabios && git describe --tags --long --dirty > .version)
 (cd roms/skiboot && ./make_version.sh > .version)
 # Fetch edk2 submodule's submodules, since it won't have access to them via
@@ -34,7 +36,7 @@ git submodule update --init
 # submodule dependencies, so we continue to handle these on a case-by-case
 # basis for now.
 (cd roms/edk2 && \
-    git submodule update --init -- \
+    git submodule update --init --depth 1 -- \
         ArmPkg/Library/ArmSoftFloatLib/berkeley-softfloat-3 \
         BaseTools/Source/C/BrotliCompress/brotli \
         CryptoPkg/Library/OpensslLib/openssl \
-- 
2.31.1



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

* [PULL 09/23] util/qemu-config: Fix "query-command-line-options" to provide the right values
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (7 preceding siblings ...)
  2022-12-14 10:08 ` [PULL 08/23] scripts/make-release: Only clone single branches to speed up " Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 10/23] util/oslib-win32: Remove obsolete reference to g_poll code Thomas Huth
                   ` (14 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel

The "query-command-line-options" command uses a hand-crafted list
of options that should be returned for the "machine" parameter.
This is pretty much out of sync with reality, for example settings
like "kvm_shadow_mem" or "accel" are not parameters for the machine
anymore. Also, there is no distinction between the targets here, so
e.g. the s390x-specific values like "loadparm" in this list also
show up with the other targets like x86_64.

Let's fix this now by geting rid of the hand-crafted list and by
querying the properties of the machine classes instead to assemble
the list.

Fixes: 0a7cf217d8 ("fix regression of qmp_query_command_line_options")
Message-Id: <20221111141323.246267-1-thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 util/qemu-config.c | 168 +++++++++++++++++++++------------------------
 1 file changed, 77 insertions(+), 91 deletions(-)

diff --git a/util/qemu-config.c b/util/qemu-config.c
index 433488aa56..cf47e8a3d0 100644
--- a/util/qemu-config.c
+++ b/util/qemu-config.c
@@ -8,6 +8,7 @@
 #include "qemu/error-report.h"
 #include "qemu/option.h"
 #include "qemu/config-file.h"
+#include "hw/boards.h"
 
 static QemuOptsList *vm_config_groups[48];
 static QemuOptsList *drive_config_groups[5];
@@ -149,97 +150,82 @@ static CommandLineParameterInfoList *get_drive_infolist(void)
     return head;
 }
 
-/* restore machine options that are now machine's properties */
-static QemuOptsList machine_opts = {
-    .merge_lists = true,
-    .head = QTAILQ_HEAD_INITIALIZER(machine_opts.head),
-    .desc = {
-        {
-            .name = "type",
-            .type = QEMU_OPT_STRING,
-            .help = "emulated machine"
-        },{
-            .name = "accel",
-            .type = QEMU_OPT_STRING,
-            .help = "accelerator list",
-        },{
-            .name = "kernel_irqchip",
-            .type = QEMU_OPT_BOOL,
-            .help = "use KVM in-kernel irqchip",
-        },{
-            .name = "kvm_shadow_mem",
-            .type = QEMU_OPT_SIZE,
-            .help = "KVM shadow MMU size",
-        },{
-            .name = "kernel",
-            .type = QEMU_OPT_STRING,
-            .help = "Linux kernel image file",
-        },{
-            .name = "initrd",
-            .type = QEMU_OPT_STRING,
-            .help = "Linux initial ramdisk file",
-        },{
-            .name = "append",
-            .type = QEMU_OPT_STRING,
-            .help = "Linux kernel command line",
-        },{
-            .name = "dtb",
-            .type = QEMU_OPT_STRING,
-            .help = "Linux kernel device tree file",
-        },{
-            .name = "dumpdtb",
-            .type = QEMU_OPT_STRING,
-            .help = "Dump current dtb to a file and quit",
-        },{
-            .name = "phandle_start",
-            .type = QEMU_OPT_NUMBER,
-            .help = "The first phandle ID we may generate dynamically",
-        },{
-            .name = "dt_compatible",
-            .type = QEMU_OPT_STRING,
-            .help = "Overrides the \"compatible\" property of the dt root node",
-        },{
-            .name = "dump-guest-core",
-            .type = QEMU_OPT_BOOL,
-            .help = "Include guest memory in  a core dump",
-        },{
-            .name = "mem-merge",
-            .type = QEMU_OPT_BOOL,
-            .help = "enable/disable memory merge support",
-        },{
-            .name = "usb",
-            .type = QEMU_OPT_BOOL,
-            .help = "Set on/off to enable/disable usb",
-        },{
-            .name = "firmware",
-            .type = QEMU_OPT_STRING,
-            .help = "firmware image",
-        },{
-            .name = "iommu",
-            .type = QEMU_OPT_BOOL,
-            .help = "Set on/off to enable/disable Intel IOMMU (VT-d)",
-        },{
-            .name = "suppress-vmdesc",
-            .type = QEMU_OPT_BOOL,
-            .help = "Set on to disable self-describing migration",
-        },{
-            .name = "aes-key-wrap",
-            .type = QEMU_OPT_BOOL,
-            .help = "enable/disable AES key wrapping using the CPACF wrapping key",
-        },{
-            .name = "dea-key-wrap",
-            .type = QEMU_OPT_BOOL,
-            .help = "enable/disable DEA key wrapping using the CPACF wrapping key",
-        },{
-            .name = "loadparm",
-            .type = QEMU_OPT_STRING,
-            .help = "Up to 8 chars in set of [A-Za-z0-9. ](lower case chars"
-                    " converted to upper case) to pass to machine"
-                    " loader, boot manager, and guest kernel",
-        },
-        { /* End of list */ }
+static CommandLineParameterInfo *objprop_to_cmdline_prop(ObjectProperty *prop)
+{
+    CommandLineParameterInfo *info;
+
+    info = g_malloc0(sizeof(*info));
+    info->name = g_strdup(prop->name);
+
+    if (g_str_equal(prop->type, "bool") || g_str_equal(prop->type, "OnOffAuto")) {
+        info->type = COMMAND_LINE_PARAMETER_TYPE_BOOLEAN;
+    } else if (g_str_equal(prop->type, "int")) {
+        info->type = COMMAND_LINE_PARAMETER_TYPE_NUMBER;
+    } else if (g_str_equal(prop->type, "size")) {
+        info->type = COMMAND_LINE_PARAMETER_TYPE_SIZE;
+    } else {
+        info->type = COMMAND_LINE_PARAMETER_TYPE_STRING;
     }
-};
+
+    if (prop->description) {
+        info->has_help = true;
+        info->help = g_strdup(prop->description);
+    }
+
+    return info;
+}
+
+static CommandLineParameterInfoList *query_all_machine_properties(void)
+{
+    CommandLineParameterInfoList *params = NULL, *clpiter;
+    CommandLineParameterInfo *info;
+    GSList *machines, *curr_mach;
+    ObjectPropertyIterator op_iter;
+    ObjectProperty *prop;
+    bool is_new;
+
+    machines = object_class_get_list(TYPE_MACHINE, false);
+    assert(machines);
+
+    /* Loop over all machine classes */
+    for (curr_mach = machines; curr_mach; curr_mach = curr_mach->next) {
+        object_class_property_iter_init(&op_iter, curr_mach->data);
+        /* ... and over the properties of each machine: */
+        while ((prop = object_property_iter_next(&op_iter))) {
+            if (!prop->set) {
+                continue;
+            }
+            /*
+             * Check whether the property has already been put into the list
+             * (via another machine class)
+             */
+            is_new = true;
+            for (clpiter = params; clpiter != NULL; clpiter = clpiter->next) {
+                if (g_str_equal(clpiter->value->name, prop->name)) {
+                    is_new = false;
+                    break;
+                }
+            }
+            /* If it hasn't been added before, add it now to the list */
+            if (is_new) {
+                info = objprop_to_cmdline_prop(prop);
+                QAPI_LIST_PREPEND(params, info);
+            }
+        }
+    }
+
+    g_slist_free(machines);
+
+    /* Add entry for the "type" parameter */
+    info = g_malloc0(sizeof(*info));
+    info->name = g_strdup("type");
+    info->type = COMMAND_LINE_PARAMETER_TYPE_STRING;
+    info->has_help = true;
+    info->help = g_strdup("machine type");
+    QAPI_LIST_PREPEND(params, info);
+
+    return params;
+}
 
 CommandLineOptionInfoList *qmp_query_command_line_options(bool has_option,
                                                           const char *option,
@@ -266,7 +252,7 @@ CommandLineOptionInfoList *qmp_query_command_line_options(bool has_option,
     if (!has_option || !strcmp(option, "machine")) {
         info = g_malloc0(sizeof(*info));
         info->option = g_strdup("machine");
-        info->parameters = query_option_descs(machine_opts.desc);
+        info->parameters = query_all_machine_properties();
         QAPI_LIST_PREPEND(conf_list, info);
     }
 
-- 
2.31.1



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

* [PULL 10/23] util/oslib-win32: Remove obsolete reference to g_poll code
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (8 preceding siblings ...)
  2022-12-14 10:08 ` [PULL 09/23] util/qemu-config: Fix "query-command-line-options" to provide the right values Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:08 ` [PULL 11/23] MAINTAINERS: Add documentation files to the corresponding sections Thomas Huth
                   ` (13 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Philippe Mathieu-Daudé

The comment about g_poll is not required here anymore since
the corresponding code has been removed a while ago already.

Fixes: b4c6036faa ("configure: bump min required glib version to 2.56")
Message-Id: <20221208133257.95673-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 util/oslib-win32.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/util/oslib-win32.c b/util/oslib-win32.c
index a67cb3822e..07ade41800 100644
--- a/util/oslib-win32.c
+++ b/util/oslib-win32.c
@@ -24,10 +24,6 @@
  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
- *
- * The implementation of g_poll (functions poll_rest, g_poll) at the end of
- * this file are based on code from GNOME glib-2 and use a different license,
- * see the license comment there.
  */
 
 #include "qemu/osdep.h"
-- 
2.31.1



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

* [PULL 11/23] MAINTAINERS: Add documentation files to the corresponding sections
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (9 preceding siblings ...)
  2022-12-14 10:08 ` [PULL 10/23] util/oslib-win32: Remove obsolete reference to g_poll code Thomas Huth
@ 2022-12-14 10:08 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 12/23] hw: Include the VMWare devices only in the x86 targets Thomas Huth
                   ` (12 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:08 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Philippe Mathieu-Daudé

A lot of files in the docs directory do not have a maintainer according to
our MAINTAINERS file, though they can be clearly associated with one of the
sections in there. Add the files now so that our scripts/get_maintainer.pl
script can output the right maintainer for them.

Message-Id: <20221212174841.201003-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 MAINTAINERS | 20 +++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 6966490c94..3bd433b65a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -78,6 +78,7 @@ M: Laurent Vivier <laurent@vivier.eu>
 S: Maintained
 L: qemu-trivial@nongnu.org
 K: ^Subject:.*(?i)trivial
+F: docs/devel/trivial-patches.rst
 T: git git://git.corpit.ru/qemu.git trivial-patches
 T: git https://github.com/vivier/qemu.git trivial-patches
 
@@ -129,6 +130,7 @@ F: util/cacheinfo.c
 F: util/cacheflush.c
 F: scripts/decodetree.py
 F: docs/devel/decodetree.rst
+F: docs/devel/tcg*
 F: include/exec/cpu*.h
 F: include/exec/exec-all.h
 F: include/exec/helper*.h
@@ -254,6 +256,7 @@ F: tests/docker/dockerfiles/debian-nios2-cross.d/build-toolchain.sh
 OpenRISC TCG CPUs
 M: Stafford Horne <shorne@gmail.com>
 S: Odd Fixes
+F: docs/system/openrisc/cpu-features.rst
 F: target/openrisc/
 F: hw/openrisc/
 F: tests/tcg/openrisc/
@@ -332,6 +335,7 @@ F: target/i386/tcg/
 F: tests/tcg/i386/
 F: tests/tcg/x86_64/
 F: hw/i386/
+F: docs/system/i386/cpu.rst
 F: docs/system/cpu-models-x86*
 T: git https://gitlab.com/ehabkost/qemu.git x86-next
 
@@ -873,6 +877,7 @@ M: Peter Maydell <peter.maydell@linaro.org>
 R: Jean-Christophe Dubois <jcd@tribudubois.net>
 L: qemu-arm@nongnu.org
 S: Odd Fixes
+F: docs/system/arm/sabrelite.rst
 F: hw/arm/sabrelite.c
 F: hw/arm/fsl-imx6.c
 F: hw/misc/imx6_*.c
@@ -1273,6 +1278,7 @@ OpenRISC Machines
 or1k-sim
 M: Jia Liu <proljc@gmail.com>
 S: Maintained
+F: docs/system/openrisc/or1k-sim.rst
 F: hw/openrisc/openrisc_sim.c
 
 PowerPC Machines
@@ -2016,6 +2022,7 @@ F: hw/virtio/trace-events
 F: qapi/virtio.json
 F: net/vhost-user.c
 F: include/hw/virtio/
+F: docs/devel/virtio*
 
 virtio-balloon
 M: Michael S. Tsirkin <mst@redhat.com>
@@ -2108,7 +2115,7 @@ F: tests/qtest/virtio-rng-test.c
 vhost-user-rng
 M: Mathieu Poirier <mathieu.poirier@linaro.org>
 S: Supported
-F: docs/tools/vhost-user-rng.rst
+F: docs/system/devices/vhost-user-rng.rst
 F: hw/virtio/vhost-user-rng.c
 F: hw/virtio/vhost-user-rng-pci.c
 F: include/hw/virtio/vhost-user-rng.h
@@ -2146,7 +2153,7 @@ S: Supported
 F: hw/nvme/*
 F: include/block/nvme.h
 F: tests/qtest/nvme-test.c
-F: docs/system/nvme.rst
+F: docs/system/devices/nvme.rst
 T: git git://git.infradead.org/qemu-nvme.git nvme-next
 
 megasas
@@ -2696,6 +2703,7 @@ GDB stub
 M: Alex Bennée <alex.bennee@linaro.org>
 R: Philippe Mathieu-Daudé <philmd@linaro.org>
 S: Maintained
+F: docs/system/gdb.rst
 F: gdbstub/*
 F: include/exec/gdbstub.h
 F: gdb-xml/
@@ -2753,6 +2761,7 @@ F: ui/
 F: include/ui/
 F: qapi/ui.json
 F: util/drm.c
+F: docs/devel/ui.rst
 
 Cocoa graphics
 M: Peter Maydell <peter.maydell@linaro.org>
@@ -2930,6 +2939,7 @@ M: Paolo Bonzini <pbonzini@redhat.com>
 R: Daniel P. Berrange <berrange@redhat.com>
 R: Eduardo Habkost <eduardo@habkost.net>
 S: Supported
+F: docs/devel/qom.rst
 F: docs/qdev-device-use.txt
 F: hw/core/qdev*
 F: hw/core/bus.c
@@ -2978,6 +2988,7 @@ F: softmmu/qtest.c
 F: accel/qtest/
 F: tests/qtest/
 F: docs/devel/qgraph.rst
+F: docs/devel/qtest.rst
 X: tests/qtest/bios-tables-test*
 
 Device Fuzzing
@@ -3044,6 +3055,7 @@ F: include/sysemu/tpm*
 F: qapi/tpm.json
 F: backends/tpm/
 F: tests/qtest/*tpm*
+F: docs/specs/tpm.rst
 T: git https://github.com/stefanberger/qemu-tpm.git tpm-next
 
 Checkpatch
@@ -3195,7 +3207,8 @@ F: replay/*
 F: block/blkreplay.c
 F: net/filter-replay.c
 F: include/sysemu/replay.h
-F: docs/replay.txt
+F: docs/devel/replay.rst
+F: docs/system/replay.rst
 F: stubs/replay.c
 F: tests/avocado/replay_kernel.py
 F: tests/avocado/replay_linux.py
@@ -3719,6 +3732,7 @@ F: tests/docker/
 F: tests/vm/
 F: tests/lcitool/
 F: scripts/archive-source.sh
+F: docs/devel/testing.rst
 W: https://gitlab.com/qemu-project/qemu/pipelines
 W: https://travis-ci.org/qemu/qemu
 
-- 
2.31.1



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

* [PULL 12/23] hw: Include the VMWare devices only in the x86 targets
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (10 preceding siblings ...)
  2022-12-14 10:08 ` [PULL 11/23] MAINTAINERS: Add documentation files to the corresponding sections Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 13/23] tests/qtest/libqos/e1000e: Remove "other" interrupts Thomas Huth
                   ` (11 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Philippe Mathieu-Daudé

It seems a little bit weird that the para-virtualized x86 VMWare
devices "vmware-svga" and "vmxnet3" also show up in non-x86 targets.
They are likely pretty useless there (since the guest OSes likely
do not have any drivers for those enabled), so let's change this and
only enable those devices by default for the classical x86 targets.

Message-Id: <20221213095144.42355-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 hw/display/Kconfig | 2 +-
 hw/net/Kconfig     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/hw/display/Kconfig b/hw/display/Kconfig
index a1b159becd..7b3da68d1c 100644
--- a/hw/display/Kconfig
+++ b/hw/display/Kconfig
@@ -55,7 +55,7 @@ config VGA_MMIO
 
 config VMWARE_VGA
     bool
-    default y if PCI_DEVICES
+    default y if PCI_DEVICES && PC_PCI
     depends on PCI
     select VGA
 
diff --git a/hw/net/Kconfig b/hw/net/Kconfig
index 6d795ec752..1cc1c5775e 100644
--- a/hw/net/Kconfig
+++ b/hw/net/Kconfig
@@ -51,7 +51,7 @@ config RTL8139_PCI
 
 config VMXNET3_PCI
     bool
-    default y if PCI_DEVICES
+    default y if PCI_DEVICES && PC_PCI
     depends on PCI
 
 config SMC91C111
-- 
2.31.1



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

* [PULL 13/23] tests/qtest/libqos/e1000e: Remove "other" interrupts
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (11 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 12/23] hw: Include the VMWare devices only in the x86 targets Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 14/23] tests/qtest/e1000e-test: De-duplicate constants Thomas Huth
                   ` (10 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Akihiko Odaki

From: Akihiko Odaki <akihiko.odaki@daynix.com>

The "other" kind of interrupts are not used in the tests.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20221110114045.65544-1-akihiko.odaki@daynix.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/qtest/libqos/e1000e.h | 1 -
 tests/qtest/libqos/e1000e.c | 1 -
 2 files changed, 2 deletions(-)

diff --git a/tests/qtest/libqos/e1000e.h b/tests/qtest/libqos/e1000e.h
index a22f5fdbad..3bf285af42 100644
--- a/tests/qtest/libqos/e1000e.h
+++ b/tests/qtest/libqos/e1000e.h
@@ -24,7 +24,6 @@
 
 #define E1000E_RX0_MSG_ID           (0)
 #define E1000E_TX0_MSG_ID           (1)
-#define E1000E_OTHER_MSG_ID         (2)
 
 #define E1000E_TDLEN    (0x3808)
 #define E1000E_TDT      (0x3818)
diff --git a/tests/qtest/libqos/e1000e.c b/tests/qtest/libqos/e1000e.c
index 80b3e3db90..3b51bafcb7 100644
--- a/tests/qtest/libqos/e1000e.c
+++ b/tests/qtest/libqos/e1000e.c
@@ -32,7 +32,6 @@
 #define E1000E_IVAR_TEST_CFG \
     (((E1000E_RX0_MSG_ID | E1000_IVAR_INT_ALLOC_VALID) << E1000_IVAR_RXQ0_SHIFT) | \
      ((E1000E_TX0_MSG_ID | E1000_IVAR_INT_ALLOC_VALID) << E1000_IVAR_TXQ0_SHIFT) | \
-     ((E1000E_OTHER_MSG_ID | E1000_IVAR_INT_ALLOC_VALID) << E1000_IVAR_OTHER_SHIFT) | \
      E1000_IVAR_TX_INT_EVERY_WB)
 
 #define E1000E_RING_LEN (0x1000)
-- 
2.31.1



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

* [PULL 14/23] tests/qtest/e1000e-test: De-duplicate constants
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (12 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 13/23] tests/qtest/libqos/e1000e: Remove "other" interrupts Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 15/23] tests/qtest/libqos/e1000e: Correctly group register accesses Thomas Huth
                   ` (9 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Akihiko Odaki

From: Akihiko Odaki <akihiko.odaki@daynix.com>

De-duplicate constants found in e1000e_send_verify() and
e1000e_receive_verify() to avoid mismatch and improve readability.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20221110114426.65951-1-akihiko.odaki@daynix.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/qtest/e1000e-test.c | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)

diff --git a/tests/qtest/e1000e-test.c b/tests/qtest/e1000e-test.c
index 08adc5226d..3fc92046be 100644
--- a/tests/qtest/e1000e-test.c
+++ b/tests/qtest/e1000e-test.c
@@ -37,15 +37,15 @@
 
 static void e1000e_send_verify(QE1000E *d, int *test_sockets, QGuestAllocator *alloc)
 {
+    static const char test[] = "TEST";
     struct e1000_tx_desc descr;
-    static const int data_len = 64;
     char buffer[64];
     int ret;
     uint32_t recv_len;
 
     /* Prepare test data buffer */
-    uint64_t data = guest_alloc(alloc, data_len);
-    memwrite(data, "TEST", 5);
+    uint64_t data = guest_alloc(alloc, sizeof(buffer));
+    memwrite(data, test, sizeof(test));
 
     /* Prepare TX descriptor */
     memset(&descr, 0, sizeof(descr));
@@ -54,7 +54,7 @@ static void e1000e_send_verify(QE1000E *d, int *test_sockets, QGuestAllocator *a
                                    E1000_TXD_CMD_EOP  |
                                    E1000_TXD_CMD_DEXT |
                                    E1000_TXD_DTYP_D   |
-                                   data_len);
+                                   sizeof(buffer));
 
     /* Put descriptor to the ring */
     e1000e_tx_ring_push(d, &descr);
@@ -69,9 +69,9 @@ static void e1000e_send_verify(QE1000E *d, int *test_sockets, QGuestAllocator *a
     /* Check data sent to the backend */
     ret = recv(test_sockets[0], &recv_len, sizeof(recv_len), 0);
     g_assert_cmpint(ret, == , sizeof(recv_len));
-    ret = recv(test_sockets[0], buffer, 64, 0);
-    g_assert_cmpint(ret, >=, 5);
-    g_assert_cmpstr(buffer, == , "TEST");
+    ret = recv(test_sockets[0], buffer, sizeof(buffer), 0);
+    g_assert_cmpint(ret, ==, sizeof(buffer));
+    g_assert_cmpstr(buffer, == , test);
 
     /* Free test data buffer */
     guest_free(alloc, data);
@@ -93,7 +93,6 @@ static void e1000e_receive_verify(QE1000E *d, int *test_sockets, QGuestAllocator
         },
     };
 
-    static const int data_len = 64;
     char buffer[64];
     int ret;
 
@@ -102,7 +101,7 @@ static void e1000e_receive_verify(QE1000E *d, int *test_sockets, QGuestAllocator
     g_assert_cmpint(ret, == , sizeof(test) + sizeof(len));
 
     /* Prepare test data buffer */
-    uint64_t data = guest_alloc(alloc, data_len);
+    uint64_t data = guest_alloc(alloc, sizeof(buffer));
 
     /* Prepare RX descriptor */
     memset(&descr, 0, sizeof(descr));
@@ -120,7 +119,7 @@ static void e1000e_receive_verify(QE1000E *d, int *test_sockets, QGuestAllocator
 
     /* Check data sent to the backend */
     memread(data, buffer, sizeof(buffer));
-    g_assert_cmpstr(buffer, == , "TEST");
+    g_assert_cmpstr(buffer, == , test);
 
     /* Free test data buffer */
     guest_free(alloc, data);
-- 
2.31.1



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

* [PULL 15/23] tests/qtest/libqos/e1000e: Correctly group register accesses
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (13 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 14/23] tests/qtest/e1000e-test: De-duplicate constants Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 16/23] .gitlab-ci.d/windows.yml: Unify the prerequisite packages Thomas Huth
                   ` (8 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Akihiko Odaki

From: Akihiko Odaki <akihiko.odaki@daynix.com>

Add a newline after E1000_TCTL write and make it clear that E1000_TCTL
write is what enabling transmit.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20221110114549.66081-1-akihiko.odaki@daynix.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/qtest/libqos/e1000e.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/qtest/libqos/e1000e.c b/tests/qtest/libqos/e1000e.c
index 3b51bafcb7..37c794b130 100644
--- a/tests/qtest/libqos/e1000e.c
+++ b/tests/qtest/libqos/e1000e.c
@@ -151,6 +151,7 @@ static void e1000e_pci_start_hw(QOSGraphObject *obj)
 
     /* Enable transmit */
     e1000e_macreg_write(&d->e1000e, E1000_TCTL, E1000_TCTL_EN);
+
     e1000e_macreg_write(&d->e1000e, E1000_RDBAL,
                            (uint32_t)d->e1000e.rx_ring);
     e1000e_macreg_write(&d->e1000e, E1000_RDBAH,
-- 
2.31.1



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

* [PULL 16/23] .gitlab-ci.d/windows.yml: Unify the prerequisite packages
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (14 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 15/23] tests/qtest/libqos/e1000e: Correctly group register accesses Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 17/23] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent Thomas Huth
                   ` (7 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Bin Meng

From: Bin Meng <bin.meng@windriver.com>

At present the prerequisite packages for 64-bit and 32-bit builds
are slightly different. Let's use the same packages for both for
easier maintenance in the future.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
Message-Id: <20221125114100.3184790-1-bmeng.cn@gmail.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.d/windows.yml | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml
index a3e7a37022..99d78c2213 100644
--- a/.gitlab-ci.d/windows.yml
+++ b/.gitlab-ci.d/windows.yml
@@ -41,11 +41,15 @@ msys2-64bit:
       mingw-w64-x86_64-gcc
       mingw-w64-x86_64-glib2
       mingw-w64-x86_64-gnutls
+      mingw-w64-x86_64-gtk3
+      mingw-w64-x86_64-libgcrypt
+      mingw-w64-x86_64-libjpeg-turbo
       mingw-w64-x86_64-libnfs
       mingw-w64-x86_64-libpng
       mingw-w64-x86_64-libssh
       mingw-w64-x86_64-libtasn1
       mingw-w64-x86_64-libusb
+      mingw-w64-x86_64-lzo2
       mingw-w64-x86_64-nettle
       mingw-w64-x86_64-ninja
       mingw-w64-x86_64-pixman
@@ -79,16 +83,22 @@ msys2-32bit:
       mingw-w64-i686-gtk3
       mingw-w64-i686-libgcrypt
       mingw-w64-i686-libjpeg-turbo
+      mingw-w64-i686-libnfs
+      mingw-w64-i686-libpng
       mingw-w64-i686-libssh
       mingw-w64-i686-libtasn1
       mingw-w64-i686-libusb
       mingw-w64-i686-lzo2
+      mingw-w64-i686-nettle
       mingw-w64-i686-ninja
       mingw-w64-i686-pixman
       mingw-w64-i686-pkgconf
       mingw-w64-i686-python
+      mingw-w64-i686-SDL2
+      mingw-w64-i686-SDL2_image
       mingw-w64-i686-snappy
-      mingw-w64-i686-usbredir "
+      mingw-w64-i686-usbredir
+      mingw-w64-i686-zstd "
   - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
   - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinG environment
   - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
-- 
2.31.1



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

* [PULL 17/23] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (15 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 16/23] .gitlab-ci.d/windows.yml: Unify the prerequisite packages Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 18/23] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now Thomas Huth
                   ` (6 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Bin Meng

From: Bin Meng <bin.meng@windriver.com>

At present the build scripts of 32-bit and 64-bit are inconsistent.
Let's keep them consistent for easier maintenance.

While we are here, add some comments to explain that for the 64-bit
job, "--without-default-devices" is a must have, at least for now.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20221125114100.3184790-2-bmeng.cn@gmail.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.d/windows.yml | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml
index 99d78c2213..6741c90ff1 100644
--- a/.gitlab-ci.d/windows.yml
+++ b/.gitlab-ci.d/windows.yml
@@ -61,12 +61,19 @@ msys2-64bit:
       mingw-w64-x86_64-usbredir
       mingw-w64-x86_64-zstd "
   - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
-  - $env:MSYSTEM = 'MINGW64'     # Start a 64 bit Mingw environment
+  - $env:MSYSTEM = 'MINGW64'     # Start a 64-bit MinGW environment
   - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
-  - .\msys64\usr\bin\bash -lc './configure --target-list=x86_64-softmmu
-      --enable-capstone --without-default-devices'
-  - .\msys64\usr\bin\bash -lc 'make'
-  - .\msys64\usr\bin\bash -lc 'make check || { cat build/meson-logs/testlog.txt; exit 1; } ;'
+  - mkdir output
+  - cd output
+  # Note: do not remove "--without-default-devices"!
+  # commit 9f8e6cad65a6 ("gitlab-ci: Speed up the msys2-64bit job by using --without-default-devices"
+  # changed to compile QEMU with the --without-default-devices switch
+  # for the msys2 64-bit job, due to the build could not complete within
+  # the project timeout.
+  - ..\msys64\usr\bin\bash -lc '../configure --target-list=x86_64-softmmu
+      --without-default-devices'
+  - ..\msys64\usr\bin\bash -lc 'make'
+  - ..\msys64\usr\bin\bash -lc 'make check || { cat meson-logs/testlog.txt; exit 1; } ;'
 
 msys2-32bit:
   extends: .shared_msys2_builder
@@ -100,10 +107,10 @@ msys2-32bit:
       mingw-w64-i686-usbredir
       mingw-w64-i686-zstd "
   - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
-  - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinG environment
+  - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinGW environment
   - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
   - mkdir output
   - cd output
-  - ..\msys64\usr\bin\bash -lc "../configure --target-list=ppc64-softmmu"
+  - ..\msys64\usr\bin\bash -lc '../configure --target-list=ppc64-softmmu'
   - ..\msys64\usr\bin\bash -lc 'make'
   - ..\msys64\usr\bin\bash -lc 'make check || { cat meson-logs/testlog.txt; exit 1; } ;'
-- 
2.31.1



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

* [PULL 18/23] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (16 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 17/23] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 19/23] tests/qtest: Enable qtest build on Windows Thomas Huth
                   ` (5 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Bin Meng, Marc-André Lureau

From: Bin Meng <bin.meng@windriver.com>

qTests don't run successfully with "--without-default-devices",
so let's exclude the qtests from CI for now.

Suggested-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20221125114100.3184790-3-bmeng.cn@gmail.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.d/windows.yml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml
index 6741c90ff1..9b5c4bcd8a 100644
--- a/.gitlab-ci.d/windows.yml
+++ b/.gitlab-ci.d/windows.yml
@@ -73,7 +73,9 @@ msys2-64bit:
   - ..\msys64\usr\bin\bash -lc '../configure --target-list=x86_64-softmmu
       --without-default-devices'
   - ..\msys64\usr\bin\bash -lc 'make'
-  - ..\msys64\usr\bin\bash -lc 'make check || { cat meson-logs/testlog.txt; exit 1; } ;'
+  # qTests don't run successfully with "--without-default-devices",
+  # so let's exclude the qtests from CI for now.
+  - ..\msys64\usr\bin\bash -lc 'make check MTESTARGS=\"--no-suite qtest\" || { cat meson-logs/testlog.txt; exit 1; } ;'
 
 msys2-32bit:
   extends: .shared_msys2_builder
-- 
2.31.1



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

* [PULL 19/23] tests/qtest: Enable qtest build on Windows
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (17 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 18/23] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 20/23] FreeBSD: Upgrade to 12.4 release Thomas Huth
                   ` (4 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Bin Meng

From: Bin Meng <bin.meng@windriver.com>

Now that we have fixed various test case issues as seen when running
on Windows, let's enable the qtest build on Windows.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20221125114100.3184790-4-bmeng.cn@gmail.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/qtest/meson.build | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build
index c07a5b1a5f..f0ebb5fac6 100644
--- a/tests/qtest/meson.build
+++ b/tests/qtest/meson.build
@@ -1,9 +1,3 @@
-# All QTests for now are POSIX-only, but the dependencies are
-# really in libqtest, not in the testcases themselves.
-if not config_host.has_key('CONFIG_POSIX')
-  subdir_done()
-endif
-
 slow_qtests = {
   'ahci-test' : 60,
   'bios-tables-test' : 120,
-- 
2.31.1



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

* [PULL 20/23] FreeBSD: Upgrade to 12.4 release
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (18 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 19/23] tests/qtest: Enable qtest build on Windows Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 21/23] gitlab-ci: Check building ppc64 without TCG Thomas Huth
                   ` (3 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Brad Smith, Philippe Mathieu-Daudé

From: Brad Smith <brad@comstyle.com>

Upgrade to 12.4 release

Signed-off-by: Brad Smith <brad@comstyle.com>
Message-Id: <Y5GJpW/1s+NEah98@humpty.home.comstyle.com>
Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed by: Warner Losh <imp@bsdimp.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.d/cirrus.yml | 2 +-
 tests/vm/freebsd        | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/.gitlab-ci.d/cirrus.yml b/.gitlab-ci.d/cirrus.yml
index 634a73a742..785b163aa6 100644
--- a/.gitlab-ci.d/cirrus.yml
+++ b/.gitlab-ci.d/cirrus.yml
@@ -50,7 +50,7 @@ x64-freebsd-12-build:
     NAME: freebsd-12
     CIRRUS_VM_INSTANCE_TYPE: freebsd_instance
     CIRRUS_VM_IMAGE_SELECTOR: image_family
-    CIRRUS_VM_IMAGE_NAME: freebsd-12-3
+    CIRRUS_VM_IMAGE_NAME: freebsd-12-4
     CIRRUS_VM_CPUS: 8
     CIRRUS_VM_RAM: 8G
     UPDATE_COMMAND: pkg update
diff --git a/tests/vm/freebsd b/tests/vm/freebsd
index d6ff4461ba..ba2ba23d24 100755
--- a/tests/vm/freebsd
+++ b/tests/vm/freebsd
@@ -28,8 +28,8 @@ class FreeBSDVM(basevm.BaseVM):
     name = "freebsd"
     arch = "x86_64"
 
-    link = "https://download.freebsd.org/ftp/releases/ISO-IMAGES/12.3/FreeBSD-12.3-RELEASE-amd64-disc1.iso.xz"
-    csum = "36dd0de50f1fe5f0a88e181e94657656de26fb64254412f74e80e128e8b938b4"
+    link = "https://download.freebsd.org/ftp/releases/ISO-IMAGES/12.4/FreeBSD-12.4-RELEASE-amd64-disc1.iso.xz"
+    csum = "1dcf6446e31bf3f81b582e9aba3319a258c29a937a2af6138ee4b181ed719a87"
     size = "20G"
     pkgs = [
         # build tools
-- 
2.31.1



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

* [PULL 21/23] gitlab-ci: Check building ppc64 without TCG
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (19 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 20/23] FreeBSD: Upgrade to 12.4 release Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 22/23] .gitlab/issue_templates: Move suggestions into comments Thomas Huth
                   ` (2 subsequent siblings)
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Philippe Mathieu-Daudé

Building QEMU for ppc64 hosts with --disable-tcg used to break a couple
of times in the past, see e.g. commit a01b64cee7 ("target/ppc: Put do_rfi
under a TCG-only block") or commit 049b4ad669 ("target/ppc: Fix build
warnings when building with 'disable-tcg'"), so we should test this in
our CI to avoid such regressions.

Message-Id: <20221208101527.36873-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab-ci.d/crossbuilds.yml | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/.gitlab-ci.d/crossbuilds.yml b/.gitlab-ci.d/crossbuilds.yml
index c4cd96433d..8dbbb8f881 100644
--- a/.gitlab-ci.d/crossbuilds.yml
+++ b/.gitlab-ci.d/crossbuilds.yml
@@ -112,6 +112,14 @@ cross-ppc64el-user:
   variables:
     IMAGE: debian-ppc64el-cross
 
+cross-ppc64el-kvm-only:
+  extends: .cross_accel_build_job
+  needs:
+    job: ppc64el-debian-cross-container
+  variables:
+    IMAGE: debian-ppc64el-cross
+    EXTRA_CONFIGURE_OPTS: --disable-tcg --without-default-devices
+
 # The riscv64 cross-builds currently use a 'sid' container to get
 # compilers and libraries. Until something more stable is found we
 # allow_failure so as not to block CI.
-- 
2.31.1



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

* [PULL 22/23] .gitlab/issue_templates: Move suggestions into comments
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (20 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 21/23] gitlab-ci: Check building ppc64 without TCG Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-14 10:09 ` [PULL 23/23] tests/qtest/vhost-user-blk-test: don't abort all qtests on missing envar Thomas Huth
  2022-12-15 13:38 ` [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Peter Maydell
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel
  Cc: John Snow, Alex Bennée, Richard Henderson

Many users forget to remove the suggestions from the bug template
when creating a new issue. So when searching for strings like "s390x"
or "Windows", you get a lot of unrelated issues in the results.
Thus let's move the suggestions into HTML comments - so they will
still show up in the markdown when editing the bug, while being
hidden/ignored in the final text or in the search queries.

Message-Id: <20221201133756.77216-1-thuth@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 .gitlab/issue_templates/bug.md | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/.gitlab/issue_templates/bug.md b/.gitlab/issue_templates/bug.md
index e910f7b1c2..53a79f5828 100644
--- a/.gitlab/issue_templates/bug.md
+++ b/.gitlab/issue_templates/bug.md
@@ -18,11 +18,11 @@ https://www.qemu.org/contribute/security-process/
 -->
 
 ## Host environment
- - Operating system: (Windows 10 21H1, Fedora 34, etc.)
- - OS/kernel version: (For POSIX hosts, use `uname -a`)
- - Architecture: (x86, ARM, s390x, etc.)
- - QEMU flavor: (qemu-system-x86_64, qemu-aarch64, qemu-img, etc.)
- - QEMU version: (e.g. `qemu-system-x86_64 --version`)
+ - Operating system:            <!-- Windows 10 21H1, Fedora 37, etc. -->
+ - OS/kernel version:           <!-- For POSIX hosts, use `uname -a` -->
+ - Architecture:                <!-- x86, ARM, s390x, etc. -->
+ - QEMU flavor:                 <!-- qemu-system-x86_64, qemu-aarch64, qemu-img, etc. -->
+ - QEMU version:                <!-- e.g. `qemu-system-x86_64 --version` -->
  - QEMU command line:
    <!--
    Give the smallest, complete command line that exhibits the problem.
@@ -35,9 +35,9 @@ https://www.qemu.org/contribute/security-process/
    ```
 
 ## Emulated/Virtualized environment
- - Operating system: (Windows 10 21H1, Fedora 34, etc.)
- - OS/kernel version: (For POSIX guests, use `uname -a`.)
- - Architecture: (x86, ARM, s390x, etc.)
+ - Operating system:            <!-- Windows 10 21H1, Fedora 37, etc. -->
+ - OS/kernel version:           <!-- For POSIX guests, use `uname -a`. -->
+ - Architecture:                <!-- x86, ARM, s390x, etc. -->
 
 
 ## Description of problem
-- 
2.31.1



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

* [PULL 23/23] tests/qtest/vhost-user-blk-test: don't abort all qtests on missing envar
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (21 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 22/23] .gitlab/issue_templates: Move suggestions into comments Thomas Huth
@ 2022-12-14 10:09 ` Thomas Huth
  2022-12-15 13:38 ` [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Peter Maydell
  23 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-14 10:09 UTC (permalink / raw)
  To: Stefan Hajnoczi, qemu-devel; +Cc: Christian Schoenebeck

From: Christian Schoenebeck <qemu_oss@crudebyte.com>

This test requires environment variable QTEST_QEMU_STORAGE_DAEMON_BINARY
to be defined for running. If not, it would immediately abort all qtests
and prevent other, unrelated tests from running.

To fix that, just skip vhost-user-blk-test instead and log a message
about missing environment variable.

Signed-off-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Message-Id: <E1oybRD-0005D5-5r@lizzy.crudebyte.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/qtest/vhost-user-blk-test.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tests/qtest/vhost-user-blk-test.c b/tests/qtest/vhost-user-blk-test.c
index 07a4c2d500..dc37f5af4d 100644
--- a/tests/qtest/vhost-user-blk-test.c
+++ b/tests/qtest/vhost-user-blk-test.c
@@ -983,6 +983,12 @@ static void register_vhost_user_blk_test(void)
         .before = vhost_user_blk_test_setup,
     };
 
+    if (!getenv("QTEST_QEMU_STORAGE_DAEMON_BINARY")) {
+        g_test_message("QTEST_QEMU_STORAGE_DAEMON_BINARY not defined, "
+                       "skipping vhost-user-blk-test");
+        return;
+    }
+
     /*
      * tests for vhost-user-blk and vhost-user-blk-pci
      * The tests are borrowed from tests/virtio-blk-test.c. But some tests
-- 
2.31.1



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

* Re: [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0
  2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
                   ` (22 preceding siblings ...)
  2022-12-14 10:09 ` [PULL 23/23] tests/qtest/vhost-user-blk-test: don't abort all qtests on missing envar Thomas Huth
@ 2022-12-15 13:38 ` Peter Maydell
  2022-12-15 14:14   ` Thomas Huth
  23 siblings, 1 reply; 26+ messages in thread
From: Peter Maydell @ 2022-12-15 13:38 UTC (permalink / raw)
  To: Thomas Huth; +Cc: Stefan Hajnoczi, qemu-devel

On Wed, 14 Dec 2022 at 10:16, Thomas Huth <thuth@redhat.com> wrote:
>
>  Hi!
>
> The following changes since commit 5204b499a6cae4dfd9fe762d5e6e82224892383b:
>
>   mailmap: Fix Stefan Weil author email (2022-12-13 15:56:57 -0500)
>
> are available in the Git repository at:
>
>   https://gitlab.com/thuth/qemu.git tags/pull-request-2022-12-14
>
> for you to fetch changes up to 8eeb98e2ea03639e743fdae82ae69d571d8ef0a3:
>
>   tests/qtest/vhost-user-blk-test: don't abort all qtests on missing envar (2022-12-14 08:55:37 +0100)
>
> ----------------------------------------------------------------
> * s390x PCI fixes and improvements (for the ISM device)
> * Fix emulated MVCP and MVCS s390x instructions
> * Clean-ups for the e1000e qtest
> * Enable qtests on Windows
> * Update FreeBSD CI to version 12.4
> * Check --disable-tcg for ppc64 in the CI
> * Improve scripts/make-releases a little bit
> * Many other misc small clean-ups and fixes here and there

Hi; this fails to compile:

../../util/qemu-config.c: In function 'objprop_to_cmdline_prop':
../../util/qemu-config.c:165:13: error: 'CommandLineParameterInfo' has
no member named 'has_help'
  165 |         info->has_help = true;
      |             ^~
../../util/qemu-config.c: In function 'query_all_machine_properties':
../../util/qemu-config.c:217:9: error: 'CommandLineParameterInfo' has
no member named 'has_help'
  217 |     info->has_help = true;
      |         ^~

I'm afraid your pullreq has crossed in the mail with Markus'
QAPI one, which refactored things so these QAPI structs
no longer have has_* fields.

thanks
-- PMM


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

* Re: [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0
  2022-12-15 13:38 ` [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Peter Maydell
@ 2022-12-15 14:14   ` Thomas Huth
  0 siblings, 0 replies; 26+ messages in thread
From: Thomas Huth @ 2022-12-15 14:14 UTC (permalink / raw)
  To: Peter Maydell; +Cc: Stefan Hajnoczi, qemu-devel

On 15/12/2022 14.38, Peter Maydell wrote:
> On Wed, 14 Dec 2022 at 10:16, Thomas Huth <thuth@redhat.com> wrote:
>>
>>   Hi!
>>
>> The following changes since commit 5204b499a6cae4dfd9fe762d5e6e82224892383b:
>>
>>    mailmap: Fix Stefan Weil author email (2022-12-13 15:56:57 -0500)
>>
>> are available in the Git repository at:
>>
>>    https://gitlab.com/thuth/qemu.git tags/pull-request-2022-12-14
>>
>> for you to fetch changes up to 8eeb98e2ea03639e743fdae82ae69d571d8ef0a3:
>>
>>    tests/qtest/vhost-user-blk-test: don't abort all qtests on missing envar (2022-12-14 08:55:37 +0100)
>>
>> ----------------------------------------------------------------
>> * s390x PCI fixes and improvements (for the ISM device)
>> * Fix emulated MVCP and MVCS s390x instructions
>> * Clean-ups for the e1000e qtest
>> * Enable qtests on Windows
>> * Update FreeBSD CI to version 12.4
>> * Check --disable-tcg for ppc64 in the CI
>> * Improve scripts/make-releases a little bit
>> * Many other misc small clean-ups and fixes here and there
> 
> Hi; this fails to compile:
> 
> ../../util/qemu-config.c: In function 'objprop_to_cmdline_prop':
> ../../util/qemu-config.c:165:13: error: 'CommandLineParameterInfo' has
> no member named 'has_help'
>    165 |         info->has_help = true;
>        |             ^~
> ../../util/qemu-config.c: In function 'query_all_machine_properties':
> ../../util/qemu-config.c:217:9: error: 'CommandLineParameterInfo' has
> no member named 'has_help'
>    217 |     info->has_help = true;
>        |         ^~
> 
> I'm afraid your pullreq has crossed in the mail with Markus'
> QAPI one, which refactored things so these QAPI structs
> no longer have has_* fields.

Right. Should be easy to fix, I'll send a v2 as soon as I've checked that it 
compiles fine everywhere...

  Thomas



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

end of thread, other threads:[~2022-12-15 14:14 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-14 10:08 [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Thomas Huth
2022-12-14 10:08 ` [PULL 01/23] s390x/pci: coalesce unmap operations Thomas Huth
2022-12-14 10:08 ` [PULL 02/23] s390x/pci: shrink DMA aperture to be bound by vfio DMA limit Thomas Huth
2022-12-14 10:08 ` [PULL 03/23] s390x/pci: reset ISM passthrough devices on shutdown and system reset Thomas Huth
2022-12-14 10:08 ` [PULL 04/23] target/s390x/tcg/mem_helper: Test the right bits in psw_key_valid() Thomas Huth
2022-12-14 10:08 ` [PULL 05/23] target/s390x: The MVCP and MVCS instructions are not privileged Thomas Huth
2022-12-14 10:08 ` [PULL 06/23] monitor/misc: Remove superfluous include statements Thomas Huth
2022-12-14 10:08 ` [PULL 07/23] scripts/make-release: Add a simple help text for the script Thomas Huth
2022-12-14 10:08 ` [PULL 08/23] scripts/make-release: Only clone single branches to speed up " Thomas Huth
2022-12-14 10:08 ` [PULL 09/23] util/qemu-config: Fix "query-command-line-options" to provide the right values Thomas Huth
2022-12-14 10:08 ` [PULL 10/23] util/oslib-win32: Remove obsolete reference to g_poll code Thomas Huth
2022-12-14 10:08 ` [PULL 11/23] MAINTAINERS: Add documentation files to the corresponding sections Thomas Huth
2022-12-14 10:09 ` [PULL 12/23] hw: Include the VMWare devices only in the x86 targets Thomas Huth
2022-12-14 10:09 ` [PULL 13/23] tests/qtest/libqos/e1000e: Remove "other" interrupts Thomas Huth
2022-12-14 10:09 ` [PULL 14/23] tests/qtest/e1000e-test: De-duplicate constants Thomas Huth
2022-12-14 10:09 ` [PULL 15/23] tests/qtest/libqos/e1000e: Correctly group register accesses Thomas Huth
2022-12-14 10:09 ` [PULL 16/23] .gitlab-ci.d/windows.yml: Unify the prerequisite packages Thomas Huth
2022-12-14 10:09 ` [PULL 17/23] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent Thomas Huth
2022-12-14 10:09 ` [PULL 18/23] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now Thomas Huth
2022-12-14 10:09 ` [PULL 19/23] tests/qtest: Enable qtest build on Windows Thomas Huth
2022-12-14 10:09 ` [PULL 20/23] FreeBSD: Upgrade to 12.4 release Thomas Huth
2022-12-14 10:09 ` [PULL 21/23] gitlab-ci: Check building ppc64 without TCG Thomas Huth
2022-12-14 10:09 ` [PULL 22/23] .gitlab/issue_templates: Move suggestions into comments Thomas Huth
2022-12-14 10:09 ` [PULL 23/23] tests/qtest/vhost-user-blk-test: don't abort all qtests on missing envar Thomas Huth
2022-12-15 13:38 ` [PULL 00/23] First batch of s390x, qtest, CI and misc patches for 8.0 Peter Maydell
2022-12-15 14:14   ` Thomas Huth

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.