qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 44d3d8: qtest: fix 'expression is always fals


From: Richard Henderson
Subject: [Qemu-commits] [qemu/qemu] 44d3d8: qtest: fix 'expression is always false' build fail...
Date: Tue, 02 Nov 2021 18:02:04 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 44d3d8981402ce7eef435dd912f21fb84f1f7c4d
      
https://github.com/qemu/qemu/commit/44d3d8981402ce7eef435dd912f21fb84f1f7c4d
  Author: Igor Mammedov <imammedo@redhat.com>
  Date:   2021-11-01 (Mon, 01 Nov 2021)

  Changed paths:
    M meson.build

  Log Message:
  -----------
  qtest: fix 'expression is always false' build failure in qtest_has_accel()

If KVM is disabled or not present, qtest library build
may fail with:
   libqtest.c: In function 'qtest_has_accel':
      comparison of unsigned expression < 0 is always false
      [-Werror=type-limits]
         for (i = 0; i < ARRAY_SIZE(targets); i++) {

due to empty 'targets' array.
Fix it by making sure that CONFIG_KVM_TARGETS isn't empty.

Fixes: e741aff0f43343 ("tests: qtest: add qtest_has_accel() to check if tested 
binary supports accelerator")
Reported-by: Jason Andryuk <jandryuk@gmail.com>
Suggested-by: "Michael S. Tsirkin" <mst@redhat.com>
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20211027151012.2639284-1-imammedo@redhat.com>
Tested-by: Jason Andryuk <jandryuk@gmail.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: e1c1915befbd2a991b20812eef6ad650b5637a36
      
https://github.com/qemu/qemu/commit/e1c1915befbd2a991b20812eef6ad650b5637a36
  Author: David Hildenbrand <david@redhat.com>
  Date:   2021-11-01 (Mon, 01 Nov 2021)

  Changed paths:
    M hw/virtio/vhost-vdpa.c

  Log Message:
  -----------
  vhost-vdpa: Set discarding of RAM broken when initializing the backend

Similar to VFIO, vDPA will go ahead an map+pin all guest memory. Memory
that used to be discarded will get re-populated and if we
discard+re-access memory after mapping+pinning, the pages mapped into the
vDPA IOMMU will go out of sync with the actual pages mapped into the user
space page tables.

Set discarding of RAM broken such that:
- virtio-mem and vhost-vdpa run mutually exclusive
- virtio-balloon is inhibited and no memory discards will get issued

In the future, we might be able to support coordinated discarding of RAM
as used by virtio-mem and already supported by vfio via the
RamDiscardManager.

Acked-by: Jason Wang <jasowang@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Cindy Lu <lulu@redhat.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20211027130324.59791-1-david@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>


  Commit: 1f85d74ac542d57559babbe0525633837e9fd52f
      
https://github.com/qemu/qemu/commit/1f85d74ac542d57559babbe0525633837e9fd52f
  Author: Jean-Philippe Brucker <jean-philippe@linaro.org>
  Date:   2021-11-01 (Mon, 01 Nov 2021)

  Changed paths:
    M hw/acpi/Kconfig
    M hw/acpi/meson.build
    A hw/acpi/viot.c
    A hw/acpi/viot.h

  Log Message:
  -----------
  hw/acpi: Add VIOT table

Add a function that generates a Virtual I/O Translation table (VIOT),
describing the topology of paravirtual IOMMUs. The table is created if a
virtio-iommu device is present. It contains a virtio-iommu node and PCI
Range nodes for endpoints managed by the IOMMU. By default, a single
node describes all PCI devices. When passing the
"default_bus_bypass_iommu" machine option and "bypass_iommu" PXB option,
only buses that do not bypass the IOMMU are described by PCI Range
nodes.

Reviewed-by: Eric Auger <eric.auger@redhat.com>
Tested-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Message-Id: <20211026182024.2642038-2-jean-philippe@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 867e9c9f4cbc152aee5ed6157257986ecad29096
      
https://github.com/qemu/qemu/commit/867e9c9f4cbc152aee5ed6157257986ecad29096
  Author: Jean-Philippe Brucker <jean-philippe@linaro.org>
  Date:   2021-11-01 (Mon, 01 Nov 2021)

  Changed paths:
    M hw/i386/acpi-build.c
    M hw/i386/amd_iommu.c
    M hw/i386/intel_iommu.c
    M hw/i386/x86-iommu-stub.c
    M hw/i386/x86-iommu.c
    M include/hw/i386/x86-iommu.h

  Log Message:
  -----------
  hw/i386/pc: Remove x86_iommu_get_type()

To generate the IOMMU ACPI table, acpi-build.c can use base QEMU types
instead of a special IommuType value.

Reviewed-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Message-Id: <20211026182024.2642038-3-jean-philippe@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 1b3bf13890fd849b2628ca8c059f8d63c74b9572
      
https://github.com/qemu/qemu/commit/1b3bf13890fd849b2628ca8c059f8d63c74b9572
  Author: Jean-Philippe Brucker <jean-philippe@linaro.org>
  Date:   2021-11-01 (Mon, 01 Nov 2021)

  Changed paths:
    M hw/i386/pc.c
    M hw/i386/x86-iommu.c
    M include/hw/i386/pc.h

  Log Message:
  -----------
  hw/i386/pc: Move IOMMU singleton into PCMachineState

We're about to support a third vIOMMU for x86, virtio-iommu which
doesn't inherit X86IOMMUState. Move the IOMMU singleton into
PCMachineState, so it can be shared between all three vIOMMUs.

The x86_iommu_get_default() helper is still needed by KVM and IOAPIC to
fetch the default IRQ-remapping IOMMU. Since virtio-iommu doesn't
support IRQ remapping, this interface doesn't need to change for the
moment. We could later replace X86IOMMUState with an "IRQ remapping
IOMMU" interface if necessary.

Reviewed-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Message-Id: <20211026182024.2642038-4-jean-philippe@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 36efa250a4ff56a73a5a73540c5097ffd7a67170
      
https://github.com/qemu/qemu/commit/36efa250a4ff56a73a5a73540c5097ffd7a67170
  Author: Jean-Philippe Brucker <jean-philippe@linaro.org>
  Date:   2021-11-01 (Mon, 01 Nov 2021)

  Changed paths:
    M hw/i386/Kconfig
    M hw/i386/acpi-build.c
    M hw/i386/pc.c

  Log Message:
  -----------
  hw/i386/pc: Allow instantiating a virtio-iommu device

Allow instantiating a virtio-iommu device by adding an ACPI Virtual I/O
Translation table (VIOT), which describes the relation between the
virtio-iommu and the endpoints it manages.

Add a hotplug handler for virtio-iommu on x86 and set the necessary
reserved region property. On x86, the [0xfee00000, 0xfeefffff] DMA
region is reserved for MSIs. DMA transactions to this range either
trigger IRQ remapping in the IOMMU or bypasses IOMMU translation.

Although virtio-iommu does not support IRQ remapping it must be informed
of the reserved region so that it can forward DMA transactions targeting
this region.

Reviewed-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Tested-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
Message-Id: <20211026182024.2642038-5-jean-philippe@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: b3dcf94f77fdf5bbea76d7101cc2a300d2550adb
      
https://github.com/qemu/qemu/commit/b3dcf94f77fdf5bbea76d7101cc2a300d2550adb
  Author: Peter Xu <peterx@redhat.com>
  Date:   2021-11-01 (Mon, 01 Nov 2021)

  Changed paths:
    M hw/pci/pci.c
    M include/hw/pci/pci.h

  Log Message:
  -----------
  pci: Define pci_bus_dev_fn/pci_bus_fn/pci_bus_ret_fn

They're used in quite a few places of pci.[ch] and also in the rest of the code
base.  Define them so that it doesn't need to be defined all over the places.

The pci_bus_fn is similar to pci_bus_dev_fn that only takes a PCIBus* and an
opaque.  The pci_bus_ret_fn is similar to pci_bus_fn but it allows to return a
void* pointer.

Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <20211028043129.38871-2-peterx@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 2914fc61d5d72c6010d2b1fe8b4048b561e44ef3
      
https://github.com/qemu/qemu/commit/2914fc61d5d72c6010d2b1fe8b4048b561e44ef3
  Author: Peter Xu <peterx@redhat.com>
  Date:   2021-11-01 (Mon, 01 Nov 2021)

  Changed paths:
    M hw/i386/acpi-build.c
    M hw/pci/pci.c
    M hw/pci/pcie.c
    M hw/ppc/spapr_pci.c
    M hw/ppc/spapr_pci_nvlink2.c
    M hw/ppc/spapr_pci_vfio.c
    M hw/s390x/s390-pci-bus.c
    M hw/xen/xen_pt.c
    M include/hw/pci/pci.h

  Log Message:
  -----------
  pci: Export pci_for_each_device_under_bus*()

They're actually more commonly used than the helper without _under_bus, because
most callers do have the pci bus on hand.  After exporting we can switch a lot
of the call sites to use these two helpers.

Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <20211028043129.38871-3-peterx@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au>


  Commit: d99e8b5fcb138b19f751c027ed5599224f9b5036
      
https://github.com/qemu/qemu/commit/d99e8b5fcb138b19f751c027ed5599224f9b5036
  Author: Pavel Dovgalyuk <pavel.dovgalyuk@ispras.ru>
  Date:   2021-11-01 (Mon, 01 Nov 2021)

  Changed paths:
    M hw/i386/vmmouse.c

  Log Message:
  -----------
  hw/i386: fix vmmouse registration

According to the logic of vmmouse_update_handler function,
vmmouse should be registered as an event handler when
it's status is zero.
vmmouse_read_id resets the status but does not register
the handler.
This patch adds vmmouse registration and activation when
status is reset.

Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru>
Message-Id: 
<163524204515.1914131.16465061981774791228.stgit@pasha-ThinkPad-X280>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 7fa736595e70b7f6e7a31779c1cf319f38ff59d6
      
https://github.com/qemu/qemu/commit/7fa736595e70b7f6e7a31779c1cf319f38ff59d6
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2021-11-02 (Tue, 02 Nov 2021)

  Changed paths:
    M hw/acpi/Kconfig
    M hw/acpi/meson.build
    A hw/acpi/viot.c
    A hw/acpi/viot.h
    M hw/i386/Kconfig
    M hw/i386/acpi-build.c
    M hw/i386/amd_iommu.c
    M hw/i386/intel_iommu.c
    M hw/i386/pc.c
    M hw/i386/vmmouse.c
    M hw/i386/x86-iommu-stub.c
    M hw/i386/x86-iommu.c
    M hw/pci/pci.c
    M hw/pci/pcie.c
    M hw/ppc/spapr_pci.c
    M hw/ppc/spapr_pci_nvlink2.c
    M hw/ppc/spapr_pci_vfio.c
    M hw/s390x/s390-pci-bus.c
    M hw/virtio/vhost-vdpa.c
    M hw/xen/xen_pt.c
    M include/hw/i386/pc.h
    M include/hw/i386/x86-iommu.h
    M include/hw/pci/pci.h
    M meson.build

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging

pc,pci,virtio: features, fixes

virtio-iommu support for x86/ACPI.
Fixes, cleanups all over the place.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

# gpg: Signature made Mon 01 Nov 2021 07:36:22 PM EDT
# gpg:                using RSA key 5D09FD0871C8F85B94CA8A0D281F0DB8D28D5469
# gpg:                issuer "mst@redhat.com"
# gpg: Good signature from "Michael S. Tsirkin <mst@kernel.org>" [full]
# gpg:                 aka "Michael S. Tsirkin <mst@redhat.com>" [full]

* remotes/mst/tags/for_upstream:
  hw/i386: fix vmmouse registration
  pci: Export pci_for_each_device_under_bus*()
  pci: Define pci_bus_dev_fn/pci_bus_fn/pci_bus_ret_fn
  hw/i386/pc: Allow instantiating a virtio-iommu device
  hw/i386/pc: Move IOMMU singleton into PCMachineState
  hw/i386/pc: Remove x86_iommu_get_type()
  hw/acpi: Add VIOT table
  vhost-vdpa: Set discarding of RAM broken when initializing the backend
  qtest: fix 'expression is always false' build failure in qtest_has_accel()

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>


Compare: https://github.com/qemu/qemu/compare/157f75435e08...7fa736595e70



reply via email to

[Prev in Thread] Current Thread [Next in Thread]