[PULL 00/63] virtio,pci: features, cleanups

Michael S. Tsirkin posted 63 patches 7 months ago
Only 62 patches received!
There is a newer version of this series
hw/acpi/hmat.h                            |   3 +-
hw/i386/acpi-common.h                     |   3 +-
hw/i386/amd_iommu.h                       |   2 -
hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
hw/virtio/virtio-qmp.h                    |   7 -
include/exec/memory.h                     |  16 +-
include/hw/acpi/acpi_dev_interface.h      |   3 -
include/hw/acpi/cpu.h                     |   6 +-
include/hw/acpi/cxl.h                     |   1 +
include/hw/acpi/generic_event_device.h    |   2 -
include/hw/cxl/cxl_component.h            |  30 ++-
include/hw/i386/pc.h                      |   6 +
include/hw/pci/pci_bridge.h               |   3 +
include/hw/virtio/vhost-backend.h         |   3 +
include/hw/virtio/vhost-user-device.h     |  46 ++++
include/hw/virtio/vhost-user.h            |  22 ++
include/hw/virtio/vhost-vdpa.h            |   1 +
include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
include/hw/virtio/virtio-net.h            |   6 +
include/qemu/uuid.h                       |   2 +
subprojects/libvhost-user/libvhost-user.h |  55 +++-
hw/acpi/acpi-x86-stub.c                   |   6 -
hw/acpi/core.c                            |   9 +
hw/acpi/cpu.c                             |   9 +-
hw/acpi/cxl.c                             |  57 +++++
hw/acpi/hmat.c                            |   1 +
hw/acpi/memory_hotplug.c                  |   1 +
hw/acpi/piix4.c                           |   5 -
hw/core/machine.c                         |   5 +-
hw/cxl/cxl-component-utils.c              |  92 ++++++-
hw/cxl/cxl-host.c                         |  67 +++--
hw/display/virtio-dmabuf.c                | 138 ++++++++++
hw/i386/acpi-build.c                      |  14 +-
hw/i386/acpi-common.c                     |   5 +-
hw/i386/acpi-microvm.c                    |   3 +-
hw/i386/amd_iommu.c                       |   9 +-
hw/i386/generic_event_device_x86.c        |  36 ---
hw/i386/microvm.c                         |   2 +-
hw/i386/pc.c                              |  32 ++-
hw/i386/pc_piix.c                         |   4 +
hw/i386/pc_q35.c                          |   2 +
hw/isa/lpc_ich9.c                         |  16 +-
hw/mem/cxl_type3.c                        | 106 +++++---
hw/net/virtio-net.c                       |   6 +-
hw/pci-bridge/cxl_upstream.c              |  15 +-
hw/pci/pci.c                              |   2 +-
hw/pci/pci_bridge.c                       |  14 ++
hw/pci/pcie_sriov.c                       |   9 +-
hw/scsi/vhost-user-scsi.c                 |   4 -
hw/virtio/vdpa-dev.c                      |   3 +
hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
hw/virtio/vhost-user-device-pci.c         |  71 ++++++
hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
hw/virtio/vhost-user-gpio.c               |   7 +
hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
hw/virtio/vhost-vdpa.c                    |  66 ++---
hw/virtio/virtio-qmp.c                    | 139 +++++-----
hw/virtio/virtio.c                        |  64 +++--
net/vhost-vdpa.c                          | 153 +++++++----
subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
tests/qtest/bios-tables-test.c            |  26 +-
tests/qtest/numa-test.c                   |   7 +-
tests/unit/test-uuid.c                    |  27 ++
tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
util/uuid.c                               |  14 ++
MAINTAINERS                               |   7 +
docs/interop/vhost-user.rst               |  57 +++++
hw/acpi/trace-events                      |  10 +-
hw/display/meson.build                    |   1 +
hw/i386/meson.build                       |   1 -
hw/virtio/meson.build                     |  28 ++-
hw/virtio/trace-events                    |   2 +-
tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
tests/unit/meson.build                    |   1 +
74 files changed, 2192 insertions(+), 558 deletions(-)
create mode 100644 include/hw/virtio/vhost-user-device.h
create mode 100644 include/hw/virtio/virtio-dmabuf.h
create mode 100644 hw/display/virtio-dmabuf.c
delete mode 100644 hw/i386/generic_event_device_x86.c
create mode 100644 hw/virtio/vhost-user-device-pci.c
create mode 100644 hw/virtio/vhost-user-device.c
create mode 100644 tests/unit/test-virtio-dmabuf.c
[PULL 00/63] virtio,pci: features, cleanups
Posted by Michael S. Tsirkin 7 months ago
The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:

  Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)

are available in the Git repository at:

  https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream

for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:

  libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)

----------------------------------------------------------------
virtio,pci: features, cleanups

vdpa:
      shadow vq vlan support
      net migration with cvq
cxl:
     dummy ACPI QTG DSM
     support emulating 4 HDM decoders
     serial number extended capability
virtio:
      hared dma-buf

Fixes, cleanups all over the place.

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

----------------------------------------------------------------
Akihiko Odaki (1):
      amd_iommu: Fix APIC address check

Albert Esteve (4):
      util/uuid: add a hash function
      hw/display: introduce virtio-dmabuf
      vhost-user: add shared_object msg
      libvhost-user: handle shared_object msg

Alex Bennée (2):
      virtio: add vhost-user-base and a generic vhost-user-device
      hw/virtio: add config support to vhost-user-device

Ani Sinha (1):
      hw/i386/pc: improve physical address space bound check for 32-bit x86 systems

Bernhard Beschow (8):
      hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
      hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
      hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
      hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
      hw/i386: Remove now redundant TYPE_ACPI_GED_X86
      hw/i386/acpi-build: Determine SMI command port just once
      hw/acpi: Trace GPE access in all device models, not just PIIX4
      hw/acpi/core: Trace enable and status registers of GPE separately

Dave Jiang (1):
      hw/cxl: Add QTG _DSM support for ACPI0017 device

David Woodhouse (1):
      hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing

Eugenio Pérez (9):
      vdpa: use first queue SVQ state for CVQ default
      vdpa: export vhost_vdpa_set_vring_ready
      vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
      vdpa: move vhost_vdpa_set_vring_ready to the caller
      vdpa: remove net cvq migration blocker
      vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
      vdpa net: fix error message setting virtio status
      vdpa net: stop probing if cannot set features
      vdpa net: follow VirtIO initialization properly at cvq isolation probing

Hawkins Jiawei (5):
      virtio-net: do not reset vlan filtering at set_features
      virtio-net: Expose MAX_VLAN
      vdpa: Restore vlan filtering state
      vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
      vhost: Add count argument to vhost_svq_poll()

Ilya Maximets (4):
      virtio: don't zero out memory region cache for indirect descriptors
      virtio: use shadow_avail_idx while checking number of heads
      virtio: remove unnecessary thread fence while reading next descriptor
      virtio: remove unused next argument from virtqueue_split_read_next_desc()

Jonah Palmer (3):
      qmp: remove virtio_list, search QOM tree instead
      qmp: update virtio feature maps, vhost-user-gpio introspection
      vhost-user: move VhostUserProtocolFeature definition to header file

Jonathan Cameron (7):
      tests/acpi: Allow update of DSDT.cxl
      tests/acpi: Update DSDT.cxl with QTG DSM
      hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
      hw/cxl: Add utility functions decoder interleave ways and target count.
      hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
      hw/cxl: Support 4 HDM decoders at all levels of topology
      hw/pci-bridge/cxl-upstream: Add serial number extended capability support

Laszlo Ersek (7):
      vhost-user: strip superfluous whitespace
      vhost-user: tighten "reply_supported" scope in "set_vring_addr"
      vhost-user: factor out "vhost_user_write_sync"
      vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
      vhost-user: hoist "write_sync", "get_features", "get_u64"
      vhost-user: allow "vhost_set_vring" to wait for a reply
      vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously

Michael S. Tsirkin (1):
      pci: SLT must be RO

Philippe Mathieu-Daudé (6):
      hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
      hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
      hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
      hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
      hw/virtio: Build vhost-vdpa.o once
      hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]

Stefan Hajnoczi (1):
      vdpa: fix gcc cvq_isolated uninitialized variable warning

Vladimir Sementsov-Ogievskiy (2):
      pcie_sriov: unregister_vfs(): fix error path
      libvhost-user.c: add assertion to vu_message_read_default

 hw/acpi/hmat.h                            |   3 +-
 hw/i386/acpi-common.h                     |   3 +-
 hw/i386/amd_iommu.h                       |   2 -
 hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
 hw/virtio/virtio-qmp.h                    |   7 -
 include/exec/memory.h                     |  16 +-
 include/hw/acpi/acpi_dev_interface.h      |   3 -
 include/hw/acpi/cpu.h                     |   6 +-
 include/hw/acpi/cxl.h                     |   1 +
 include/hw/acpi/generic_event_device.h    |   2 -
 include/hw/cxl/cxl_component.h            |  30 ++-
 include/hw/i386/pc.h                      |   6 +
 include/hw/pci/pci_bridge.h               |   3 +
 include/hw/virtio/vhost-backend.h         |   3 +
 include/hw/virtio/vhost-user-device.h     |  46 ++++
 include/hw/virtio/vhost-user.h            |  22 ++
 include/hw/virtio/vhost-vdpa.h            |   1 +
 include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
 include/hw/virtio/virtio-net.h            |   6 +
 include/qemu/uuid.h                       |   2 +
 subprojects/libvhost-user/libvhost-user.h |  55 +++-
 hw/acpi/acpi-x86-stub.c                   |   6 -
 hw/acpi/core.c                            |   9 +
 hw/acpi/cpu.c                             |   9 +-
 hw/acpi/cxl.c                             |  57 +++++
 hw/acpi/hmat.c                            |   1 +
 hw/acpi/memory_hotplug.c                  |   1 +
 hw/acpi/piix4.c                           |   5 -
 hw/core/machine.c                         |   5 +-
 hw/cxl/cxl-component-utils.c              |  92 ++++++-
 hw/cxl/cxl-host.c                         |  67 +++--
 hw/display/virtio-dmabuf.c                | 138 ++++++++++
 hw/i386/acpi-build.c                      |  14 +-
 hw/i386/acpi-common.c                     |   5 +-
 hw/i386/acpi-microvm.c                    |   3 +-
 hw/i386/amd_iommu.c                       |   9 +-
 hw/i386/generic_event_device_x86.c        |  36 ---
 hw/i386/microvm.c                         |   2 +-
 hw/i386/pc.c                              |  32 ++-
 hw/i386/pc_piix.c                         |   4 +
 hw/i386/pc_q35.c                          |   2 +
 hw/isa/lpc_ich9.c                         |  16 +-
 hw/mem/cxl_type3.c                        | 106 +++++---
 hw/net/virtio-net.c                       |   6 +-
 hw/pci-bridge/cxl_upstream.c              |  15 +-
 hw/pci/pci.c                              |   2 +-
 hw/pci/pci_bridge.c                       |  14 ++
 hw/pci/pcie_sriov.c                       |   9 +-
 hw/scsi/vhost-user-scsi.c                 |   4 -
 hw/virtio/vdpa-dev.c                      |   3 +
 hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
 hw/virtio/vhost-user-device-pci.c         |  71 ++++++
 hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
 hw/virtio/vhost-user-gpio.c               |   7 +
 hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
 hw/virtio/vhost-vdpa.c                    |  66 ++---
 hw/virtio/virtio-qmp.c                    | 139 +++++-----
 hw/virtio/virtio.c                        |  64 +++--
 net/vhost-vdpa.c                          | 153 +++++++----
 subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
 tests/qtest/bios-tables-test.c            |  26 +-
 tests/qtest/numa-test.c                   |   7 +-
 tests/unit/test-uuid.c                    |  27 ++
 tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
 util/uuid.c                               |  14 ++
 MAINTAINERS                               |   7 +
 docs/interop/vhost-user.rst               |  57 +++++
 hw/acpi/trace-events                      |  10 +-
 hw/display/meson.build                    |   1 +
 hw/i386/meson.build                       |   1 -
 hw/virtio/meson.build                     |  28 ++-
 hw/virtio/trace-events                    |   2 +-
 tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
 tests/unit/meson.build                    |   1 +
 74 files changed, 2192 insertions(+), 558 deletions(-)
 create mode 100644 include/hw/virtio/vhost-user-device.h
 create mode 100644 include/hw/virtio/virtio-dmabuf.h
 create mode 100644 hw/display/virtio-dmabuf.c
 delete mode 100644 hw/i386/generic_event_device_x86.c
 create mode 100644 hw/virtio/vhost-user-device-pci.c
 create mode 100644 hw/virtio/vhost-user-device.c
 create mode 100644 tests/unit/test-virtio-dmabuf.c


Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Philippe Mathieu-Daudé 7 months ago
On 4/10/23 10:43, Michael S. Tsirkin wrote:

> ----------------------------------------------------------------
> virtio,pci: features, cleanups
> 
> vdpa:
>        shadow vq vlan support
>        net migration with cvq
> cxl:
>       dummy ACPI QTG DSM
>       support emulating 4 HDM decoders
>       serial number extended capability
> virtio:
>        hared dma-buf
> 
> Fixes, cleanups all over the place.
> 
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> 
> ----------------------------------------------------------------


> Philippe Mathieu-Daudé (6):
>        hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
>        hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
>        hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
>        hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
>        hw/virtio: Build vhost-vdpa.o once
>        hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]

Woohoo \o/ thanks for merging this!

Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Michael S. Tsirkin 7 months ago
On Wed, Oct 04, 2023 at 10:54:35AM +0200, Philippe Mathieu-Daudé wrote:
> On 4/10/23 10:43, Michael S. Tsirkin wrote:
> 
> > ----------------------------------------------------------------
> > virtio,pci: features, cleanups
> > 
> > vdpa:
> >        shadow vq vlan support
> >        net migration with cvq
> > cxl:
> >       dummy ACPI QTG DSM
> >       support emulating 4 HDM decoders
> >       serial number extended capability
> > virtio:
> >        hared dma-buf
> > 
> > Fixes, cleanups all over the place.
> > 
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > 
> > ----------------------------------------------------------------
> 
> 
> > Philippe Mathieu-Daudé (6):
> >        hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
> >        hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
> >        hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
> >        hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
> >        hw/virtio: Build vhost-vdpa.o once
> >        hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
> 
> Woohoo \o/ thanks for merging this!


😳


Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Michael S. Tsirkin 7 months ago
On Wed, Oct 04, 2023 at 04:43:13AM -0400, Michael S. Tsirkin wrote:
> The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
> 
>   Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
> 
> are available in the Git repository at:
> 
>   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> 
> for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:


8c4f1adf6b2dec02f0c04de470c78a4aa2da97dc now - Laszlo found an issue
with version of his patchset that I applied, dropped for now
and will be in the next pull.


>   libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
> 
> ----------------------------------------------------------------
> virtio,pci: features, cleanups
> 
> vdpa:
>       shadow vq vlan support
>       net migration with cvq
> cxl:
>      dummy ACPI QTG DSM
>      support emulating 4 HDM decoders
>      serial number extended capability
> virtio:
>       hared dma-buf
> 
> Fixes, cleanups all over the place.
> 
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> 
> ----------------------------------------------------------------
> Akihiko Odaki (1):
>       amd_iommu: Fix APIC address check
> 
> Albert Esteve (4):
>       util/uuid: add a hash function
>       hw/display: introduce virtio-dmabuf
>       vhost-user: add shared_object msg
>       libvhost-user: handle shared_object msg
> 
> Alex Bennée (2):
>       virtio: add vhost-user-base and a generic vhost-user-device
>       hw/virtio: add config support to vhost-user-device
> 
> Ani Sinha (1):
>       hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
> 
> Bernhard Beschow (8):
>       hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
>       hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
>       hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
>       hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
>       hw/i386: Remove now redundant TYPE_ACPI_GED_X86
>       hw/i386/acpi-build: Determine SMI command port just once
>       hw/acpi: Trace GPE access in all device models, not just PIIX4
>       hw/acpi/core: Trace enable and status registers of GPE separately
> 
> Dave Jiang (1):
>       hw/cxl: Add QTG _DSM support for ACPI0017 device
> 
> David Woodhouse (1):
>       hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
> 
> Eugenio Pérez (9):
>       vdpa: use first queue SVQ state for CVQ default
>       vdpa: export vhost_vdpa_set_vring_ready
>       vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
>       vdpa: move vhost_vdpa_set_vring_ready to the caller
>       vdpa: remove net cvq migration blocker
>       vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
>       vdpa net: fix error message setting virtio status
>       vdpa net: stop probing if cannot set features
>       vdpa net: follow VirtIO initialization properly at cvq isolation probing
> 
> Hawkins Jiawei (5):
>       virtio-net: do not reset vlan filtering at set_features
>       virtio-net: Expose MAX_VLAN
>       vdpa: Restore vlan filtering state
>       vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
>       vhost: Add count argument to vhost_svq_poll()
> 
> Ilya Maximets (4):
>       virtio: don't zero out memory region cache for indirect descriptors
>       virtio: use shadow_avail_idx while checking number of heads
>       virtio: remove unnecessary thread fence while reading next descriptor
>       virtio: remove unused next argument from virtqueue_split_read_next_desc()
> 
> Jonah Palmer (3):
>       qmp: remove virtio_list, search QOM tree instead
>       qmp: update virtio feature maps, vhost-user-gpio introspection
>       vhost-user: move VhostUserProtocolFeature definition to header file
> 
> Jonathan Cameron (7):
>       tests/acpi: Allow update of DSDT.cxl
>       tests/acpi: Update DSDT.cxl with QTG DSM
>       hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
>       hw/cxl: Add utility functions decoder interleave ways and target count.
>       hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
>       hw/cxl: Support 4 HDM decoders at all levels of topology
>       hw/pci-bridge/cxl-upstream: Add serial number extended capability support
> 
> Laszlo Ersek (7):
>       vhost-user: strip superfluous whitespace
>       vhost-user: tighten "reply_supported" scope in "set_vring_addr"
>       vhost-user: factor out "vhost_user_write_sync"
>       vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
>       vhost-user: hoist "write_sync", "get_features", "get_u64"
>       vhost-user: allow "vhost_set_vring" to wait for a reply
>       vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
> 
> Michael S. Tsirkin (1):
>       pci: SLT must be RO
> 
> Philippe Mathieu-Daudé (6):
>       hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
>       hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
>       hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
>       hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
>       hw/virtio: Build vhost-vdpa.o once
>       hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
> 
> Stefan Hajnoczi (1):
>       vdpa: fix gcc cvq_isolated uninitialized variable warning
> 
> Vladimir Sementsov-Ogievskiy (2):
>       pcie_sriov: unregister_vfs(): fix error path
>       libvhost-user.c: add assertion to vu_message_read_default
> 
>  hw/acpi/hmat.h                            |   3 +-
>  hw/i386/acpi-common.h                     |   3 +-
>  hw/i386/amd_iommu.h                       |   2 -
>  hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
>  hw/virtio/virtio-qmp.h                    |   7 -
>  include/exec/memory.h                     |  16 +-
>  include/hw/acpi/acpi_dev_interface.h      |   3 -
>  include/hw/acpi/cpu.h                     |   6 +-
>  include/hw/acpi/cxl.h                     |   1 +
>  include/hw/acpi/generic_event_device.h    |   2 -
>  include/hw/cxl/cxl_component.h            |  30 ++-
>  include/hw/i386/pc.h                      |   6 +
>  include/hw/pci/pci_bridge.h               |   3 +
>  include/hw/virtio/vhost-backend.h         |   3 +
>  include/hw/virtio/vhost-user-device.h     |  46 ++++
>  include/hw/virtio/vhost-user.h            |  22 ++
>  include/hw/virtio/vhost-vdpa.h            |   1 +
>  include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
>  include/hw/virtio/virtio-net.h            |   6 +
>  include/qemu/uuid.h                       |   2 +
>  subprojects/libvhost-user/libvhost-user.h |  55 +++-
>  hw/acpi/acpi-x86-stub.c                   |   6 -
>  hw/acpi/core.c                            |   9 +
>  hw/acpi/cpu.c                             |   9 +-
>  hw/acpi/cxl.c                             |  57 +++++
>  hw/acpi/hmat.c                            |   1 +
>  hw/acpi/memory_hotplug.c                  |   1 +
>  hw/acpi/piix4.c                           |   5 -
>  hw/core/machine.c                         |   5 +-
>  hw/cxl/cxl-component-utils.c              |  92 ++++++-
>  hw/cxl/cxl-host.c                         |  67 +++--
>  hw/display/virtio-dmabuf.c                | 138 ++++++++++
>  hw/i386/acpi-build.c                      |  14 +-
>  hw/i386/acpi-common.c                     |   5 +-
>  hw/i386/acpi-microvm.c                    |   3 +-
>  hw/i386/amd_iommu.c                       |   9 +-
>  hw/i386/generic_event_device_x86.c        |  36 ---
>  hw/i386/microvm.c                         |   2 +-
>  hw/i386/pc.c                              |  32 ++-
>  hw/i386/pc_piix.c                         |   4 +
>  hw/i386/pc_q35.c                          |   2 +
>  hw/isa/lpc_ich9.c                         |  16 +-
>  hw/mem/cxl_type3.c                        | 106 +++++---
>  hw/net/virtio-net.c                       |   6 +-
>  hw/pci-bridge/cxl_upstream.c              |  15 +-
>  hw/pci/pci.c                              |   2 +-
>  hw/pci/pci_bridge.c                       |  14 ++
>  hw/pci/pcie_sriov.c                       |   9 +-
>  hw/scsi/vhost-user-scsi.c                 |   4 -
>  hw/virtio/vdpa-dev.c                      |   3 +
>  hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
>  hw/virtio/vhost-user-device-pci.c         |  71 ++++++
>  hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
>  hw/virtio/vhost-user-gpio.c               |   7 +
>  hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
>  hw/virtio/vhost-vdpa.c                    |  66 ++---
>  hw/virtio/virtio-qmp.c                    | 139 +++++-----
>  hw/virtio/virtio.c                        |  64 +++--
>  net/vhost-vdpa.c                          | 153 +++++++----
>  subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
>  tests/qtest/bios-tables-test.c            |  26 +-
>  tests/qtest/numa-test.c                   |   7 +-
>  tests/unit/test-uuid.c                    |  27 ++
>  tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
>  util/uuid.c                               |  14 ++
>  MAINTAINERS                               |   7 +
>  docs/interop/vhost-user.rst               |  57 +++++
>  hw/acpi/trace-events                      |  10 +-
>  hw/display/meson.build                    |   1 +
>  hw/i386/meson.build                       |   1 -
>  hw/virtio/meson.build                     |  28 ++-
>  hw/virtio/trace-events                    |   2 +-
>  tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
>  tests/unit/meson.build                    |   1 +
>  74 files changed, 2192 insertions(+), 558 deletions(-)
>  create mode 100644 include/hw/virtio/vhost-user-device.h
>  create mode 100644 include/hw/virtio/virtio-dmabuf.h
>  create mode 100644 hw/display/virtio-dmabuf.c
>  delete mode 100644 hw/i386/generic_event_device_x86.c
>  create mode 100644 hw/virtio/vhost-user-device-pci.c
>  create mode 100644 hw/virtio/vhost-user-device.c
>  create mode 100644 tests/unit/test-virtio-dmabuf.c
> 
Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Michael S. Tsirkin 7 months ago
On Wed, Oct 04, 2023 at 04:43:13AM -0400, Michael S. Tsirkin wrote:
> The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
> 
>   Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
> 
> are available in the Git repository at:
> 
>   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> 
> for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:

603cf7156bc64236b4a5cccca9b42d5af5df5eea now - had to fix some commit
logs.

>   libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
> 
> ----------------------------------------------------------------
> virtio,pci: features, cleanups
> 
> vdpa:
>       shadow vq vlan support
>       net migration with cvq
> cxl:
>      dummy ACPI QTG DSM
>      support emulating 4 HDM decoders
>      serial number extended capability
> virtio:
>       hared dma-buf
> 
> Fixes, cleanups all over the place.
> 
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> 
> ----------------------------------------------------------------
> Akihiko Odaki (1):
>       amd_iommu: Fix APIC address check
> 
> Albert Esteve (4):
>       util/uuid: add a hash function
>       hw/display: introduce virtio-dmabuf
>       vhost-user: add shared_object msg
>       libvhost-user: handle shared_object msg
> 
> Alex Bennée (2):
>       virtio: add vhost-user-base and a generic vhost-user-device
>       hw/virtio: add config support to vhost-user-device
> 
> Ani Sinha (1):
>       hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
> 
> Bernhard Beschow (8):
>       hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
>       hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
>       hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
>       hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
>       hw/i386: Remove now redundant TYPE_ACPI_GED_X86
>       hw/i386/acpi-build: Determine SMI command port just once
>       hw/acpi: Trace GPE access in all device models, not just PIIX4
>       hw/acpi/core: Trace enable and status registers of GPE separately
> 
> Dave Jiang (1):
>       hw/cxl: Add QTG _DSM support for ACPI0017 device
> 
> David Woodhouse (1):
>       hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
> 
> Eugenio Pérez (9):
>       vdpa: use first queue SVQ state for CVQ default
>       vdpa: export vhost_vdpa_set_vring_ready
>       vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
>       vdpa: move vhost_vdpa_set_vring_ready to the caller
>       vdpa: remove net cvq migration blocker
>       vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
>       vdpa net: fix error message setting virtio status
>       vdpa net: stop probing if cannot set features
>       vdpa net: follow VirtIO initialization properly at cvq isolation probing
> 
> Hawkins Jiawei (5):
>       virtio-net: do not reset vlan filtering at set_features
>       virtio-net: Expose MAX_VLAN
>       vdpa: Restore vlan filtering state
>       vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
>       vhost: Add count argument to vhost_svq_poll()
> 
> Ilya Maximets (4):
>       virtio: don't zero out memory region cache for indirect descriptors
>       virtio: use shadow_avail_idx while checking number of heads
>       virtio: remove unnecessary thread fence while reading next descriptor
>       virtio: remove unused next argument from virtqueue_split_read_next_desc()
> 
> Jonah Palmer (3):
>       qmp: remove virtio_list, search QOM tree instead
>       qmp: update virtio feature maps, vhost-user-gpio introspection
>       vhost-user: move VhostUserProtocolFeature definition to header file
> 
> Jonathan Cameron (7):
>       tests/acpi: Allow update of DSDT.cxl
>       tests/acpi: Update DSDT.cxl with QTG DSM
>       hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
>       hw/cxl: Add utility functions decoder interleave ways and target count.
>       hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
>       hw/cxl: Support 4 HDM decoders at all levels of topology
>       hw/pci-bridge/cxl-upstream: Add serial number extended capability support
> 
> Laszlo Ersek (7):
>       vhost-user: strip superfluous whitespace
>       vhost-user: tighten "reply_supported" scope in "set_vring_addr"
>       vhost-user: factor out "vhost_user_write_sync"
>       vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
>       vhost-user: hoist "write_sync", "get_features", "get_u64"
>       vhost-user: allow "vhost_set_vring" to wait for a reply
>       vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
> 
> Michael S. Tsirkin (1):
>       pci: SLT must be RO
> 
> Philippe Mathieu-Daudé (6):
>       hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
>       hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
>       hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
>       hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
>       hw/virtio: Build vhost-vdpa.o once
>       hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
> 
> Stefan Hajnoczi (1):
>       vdpa: fix gcc cvq_isolated uninitialized variable warning
> 
> Vladimir Sementsov-Ogievskiy (2):
>       pcie_sriov: unregister_vfs(): fix error path
>       libvhost-user.c: add assertion to vu_message_read_default
> 
>  hw/acpi/hmat.h                            |   3 +-
>  hw/i386/acpi-common.h                     |   3 +-
>  hw/i386/amd_iommu.h                       |   2 -
>  hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
>  hw/virtio/virtio-qmp.h                    |   7 -
>  include/exec/memory.h                     |  16 +-
>  include/hw/acpi/acpi_dev_interface.h      |   3 -
>  include/hw/acpi/cpu.h                     |   6 +-
>  include/hw/acpi/cxl.h                     |   1 +
>  include/hw/acpi/generic_event_device.h    |   2 -
>  include/hw/cxl/cxl_component.h            |  30 ++-
>  include/hw/i386/pc.h                      |   6 +
>  include/hw/pci/pci_bridge.h               |   3 +
>  include/hw/virtio/vhost-backend.h         |   3 +
>  include/hw/virtio/vhost-user-device.h     |  46 ++++
>  include/hw/virtio/vhost-user.h            |  22 ++
>  include/hw/virtio/vhost-vdpa.h            |   1 +
>  include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
>  include/hw/virtio/virtio-net.h            |   6 +
>  include/qemu/uuid.h                       |   2 +
>  subprojects/libvhost-user/libvhost-user.h |  55 +++-
>  hw/acpi/acpi-x86-stub.c                   |   6 -
>  hw/acpi/core.c                            |   9 +
>  hw/acpi/cpu.c                             |   9 +-
>  hw/acpi/cxl.c                             |  57 +++++
>  hw/acpi/hmat.c                            |   1 +
>  hw/acpi/memory_hotplug.c                  |   1 +
>  hw/acpi/piix4.c                           |   5 -
>  hw/core/machine.c                         |   5 +-
>  hw/cxl/cxl-component-utils.c              |  92 ++++++-
>  hw/cxl/cxl-host.c                         |  67 +++--
>  hw/display/virtio-dmabuf.c                | 138 ++++++++++
>  hw/i386/acpi-build.c                      |  14 +-
>  hw/i386/acpi-common.c                     |   5 +-
>  hw/i386/acpi-microvm.c                    |   3 +-
>  hw/i386/amd_iommu.c                       |   9 +-
>  hw/i386/generic_event_device_x86.c        |  36 ---
>  hw/i386/microvm.c                         |   2 +-
>  hw/i386/pc.c                              |  32 ++-
>  hw/i386/pc_piix.c                         |   4 +
>  hw/i386/pc_q35.c                          |   2 +
>  hw/isa/lpc_ich9.c                         |  16 +-
>  hw/mem/cxl_type3.c                        | 106 +++++---
>  hw/net/virtio-net.c                       |   6 +-
>  hw/pci-bridge/cxl_upstream.c              |  15 +-
>  hw/pci/pci.c                              |   2 +-
>  hw/pci/pci_bridge.c                       |  14 ++
>  hw/pci/pcie_sriov.c                       |   9 +-
>  hw/scsi/vhost-user-scsi.c                 |   4 -
>  hw/virtio/vdpa-dev.c                      |   3 +
>  hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
>  hw/virtio/vhost-user-device-pci.c         |  71 ++++++
>  hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
>  hw/virtio/vhost-user-gpio.c               |   7 +
>  hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
>  hw/virtio/vhost-vdpa.c                    |  66 ++---
>  hw/virtio/virtio-qmp.c                    | 139 +++++-----
>  hw/virtio/virtio.c                        |  64 +++--
>  net/vhost-vdpa.c                          | 153 +++++++----
>  subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
>  tests/qtest/bios-tables-test.c            |  26 +-
>  tests/qtest/numa-test.c                   |   7 +-
>  tests/unit/test-uuid.c                    |  27 ++
>  tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
>  util/uuid.c                               |  14 ++
>  MAINTAINERS                               |   7 +
>  docs/interop/vhost-user.rst               |  57 +++++
>  hw/acpi/trace-events                      |  10 +-
>  hw/display/meson.build                    |   1 +
>  hw/i386/meson.build                       |   1 -
>  hw/virtio/meson.build                     |  28 ++-
>  hw/virtio/trace-events                    |   2 +-
>  tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
>  tests/unit/meson.build                    |   1 +
>  74 files changed, 2192 insertions(+), 558 deletions(-)
>  create mode 100644 include/hw/virtio/vhost-user-device.h
>  create mode 100644 include/hw/virtio/virtio-dmabuf.h
>  create mode 100644 hw/display/virtio-dmabuf.c
>  delete mode 100644 hw/i386/generic_event_device_x86.c
>  create mode 100644 hw/virtio/vhost-user-device-pci.c
>  create mode 100644 hw/virtio/vhost-user-device.c
>  create mode 100644 tests/unit/test-virtio-dmabuf.c
> 
Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Stefan Hajnoczi 7 months ago
On Wed, 4 Oct 2023 at 04:43, Michael S. Tsirkin <mst@redhat.com> wrote:
>
> The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
>
>   Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
>
> are available in the Git repository at:
>
>   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
>
> for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:
>
>   libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
>
> ----------------------------------------------------------------
> virtio,pci: features, cleanups
>
> vdpa:
>       shadow vq vlan support
>       net migration with cvq
> cxl:
>      dummy ACPI QTG DSM
>      support emulating 4 HDM decoders
>      serial number extended capability
> virtio:
>       hared dma-buf
>
> Fixes, cleanups all over the place.
>
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
>
> ----------------------------------------------------------------
> Akihiko Odaki (1):
>       amd_iommu: Fix APIC address check
>
> Albert Esteve (4):
>       util/uuid: add a hash function
>       hw/display: introduce virtio-dmabuf
>       vhost-user: add shared_object msg
>       libvhost-user: handle shared_object msg
>
> Alex Bennée (2):
>       virtio: add vhost-user-base and a generic vhost-user-device
>       hw/virtio: add config support to vhost-user-device
>
> Ani Sinha (1):
>       hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
>
> Bernhard Beschow (8):
>       hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
>       hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
>       hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
>       hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
>       hw/i386: Remove now redundant TYPE_ACPI_GED_X86
>       hw/i386/acpi-build: Determine SMI command port just once
>       hw/acpi: Trace GPE access in all device models, not just PIIX4
>       hw/acpi/core: Trace enable and status registers of GPE separately
>
> Dave Jiang (1):
>       hw/cxl: Add QTG _DSM support for ACPI0017 device
>
> David Woodhouse (1):
>       hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
>
> Eugenio Pérez (9):
>       vdpa: use first queue SVQ state for CVQ default
>       vdpa: export vhost_vdpa_set_vring_ready
>       vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
>       vdpa: move vhost_vdpa_set_vring_ready to the caller
>       vdpa: remove net cvq migration blocker
>       vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
>       vdpa net: fix error message setting virtio status
>       vdpa net: stop probing if cannot set features
>       vdpa net: follow VirtIO initialization properly at cvq isolation probing
>
> Hawkins Jiawei (5):
>       virtio-net: do not reset vlan filtering at set_features
>       virtio-net: Expose MAX_VLAN
>       vdpa: Restore vlan filtering state
>       vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
>       vhost: Add count argument to vhost_svq_poll()
>
> Ilya Maximets (4):
>       virtio: don't zero out memory region cache for indirect descriptors
>       virtio: use shadow_avail_idx while checking number of heads
>       virtio: remove unnecessary thread fence while reading next descriptor
>       virtio: remove unused next argument from virtqueue_split_read_next_desc()
>
> Jonah Palmer (3):
>       qmp: remove virtio_list, search QOM tree instead
>       qmp: update virtio feature maps, vhost-user-gpio introspection
>       vhost-user: move VhostUserProtocolFeature definition to header file
>
> Jonathan Cameron (7):
>       tests/acpi: Allow update of DSDT.cxl
>       tests/acpi: Update DSDT.cxl with QTG DSM
>       hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
>       hw/cxl: Add utility functions decoder interleave ways and target count.
>       hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
>       hw/cxl: Support 4 HDM decoders at all levels of topology
>       hw/pci-bridge/cxl-upstream: Add serial number extended capability support
>
> Laszlo Ersek (7):
>       vhost-user: strip superfluous whitespace
>       vhost-user: tighten "reply_supported" scope in "set_vring_addr"
>       vhost-user: factor out "vhost_user_write_sync"
>       vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
>       vhost-user: hoist "write_sync", "get_features", "get_u64"
>       vhost-user: allow "vhost_set_vring" to wait for a reply
>       vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
>
> Michael S. Tsirkin (1):
>       pci: SLT must be RO
>
> Philippe Mathieu-Daudé (6):
>       hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
>       hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
>       hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
>       hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
>       hw/virtio: Build vhost-vdpa.o once
>       hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
>
> Stefan Hajnoczi (1):
>       vdpa: fix gcc cvq_isolated uninitialized variable warning
>
> Vladimir Sementsov-Ogievskiy (2):
>       pcie_sriov: unregister_vfs(): fix error path
>       libvhost-user.c: add assertion to vu_message_read_default
>
>  hw/acpi/hmat.h                            |   3 +-
>  hw/i386/acpi-common.h                     |   3 +-
>  hw/i386/amd_iommu.h                       |   2 -
>  hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
>  hw/virtio/virtio-qmp.h                    |   7 -
>  include/exec/memory.h                     |  16 +-
>  include/hw/acpi/acpi_dev_interface.h      |   3 -
>  include/hw/acpi/cpu.h                     |   6 +-
>  include/hw/acpi/cxl.h                     |   1 +
>  include/hw/acpi/generic_event_device.h    |   2 -
>  include/hw/cxl/cxl_component.h            |  30 ++-
>  include/hw/i386/pc.h                      |   6 +
>  include/hw/pci/pci_bridge.h               |   3 +
>  include/hw/virtio/vhost-backend.h         |   3 +
>  include/hw/virtio/vhost-user-device.h     |  46 ++++
>  include/hw/virtio/vhost-user.h            |  22 ++
>  include/hw/virtio/vhost-vdpa.h            |   1 +
>  include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
>  include/hw/virtio/virtio-net.h            |   6 +
>  include/qemu/uuid.h                       |   2 +
>  subprojects/libvhost-user/libvhost-user.h |  55 +++-
>  hw/acpi/acpi-x86-stub.c                   |   6 -
>  hw/acpi/core.c                            |   9 +
>  hw/acpi/cpu.c                             |   9 +-
>  hw/acpi/cxl.c                             |  57 +++++
>  hw/acpi/hmat.c                            |   1 +
>  hw/acpi/memory_hotplug.c                  |   1 +
>  hw/acpi/piix4.c                           |   5 -
>  hw/core/machine.c                         |   5 +-
>  hw/cxl/cxl-component-utils.c              |  92 ++++++-
>  hw/cxl/cxl-host.c                         |  67 +++--
>  hw/display/virtio-dmabuf.c                | 138 ++++++++++
>  hw/i386/acpi-build.c                      |  14 +-
>  hw/i386/acpi-common.c                     |   5 +-
>  hw/i386/acpi-microvm.c                    |   3 +-
>  hw/i386/amd_iommu.c                       |   9 +-
>  hw/i386/generic_event_device_x86.c        |  36 ---
>  hw/i386/microvm.c                         |   2 +-
>  hw/i386/pc.c                              |  32 ++-
>  hw/i386/pc_piix.c                         |   4 +
>  hw/i386/pc_q35.c                          |   2 +
>  hw/isa/lpc_ich9.c                         |  16 +-
>  hw/mem/cxl_type3.c                        | 106 +++++---
>  hw/net/virtio-net.c                       |   6 +-
>  hw/pci-bridge/cxl_upstream.c              |  15 +-
>  hw/pci/pci.c                              |   2 +-
>  hw/pci/pci_bridge.c                       |  14 ++
>  hw/pci/pcie_sriov.c                       |   9 +-
>  hw/scsi/vhost-user-scsi.c                 |   4 -
>  hw/virtio/vdpa-dev.c                      |   3 +
>  hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
>  hw/virtio/vhost-user-device-pci.c         |  71 ++++++
>  hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
>  hw/virtio/vhost-user-gpio.c               |   7 +
>  hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
>  hw/virtio/vhost-vdpa.c                    |  66 ++---
>  hw/virtio/virtio-qmp.c                    | 139 +++++-----
>  hw/virtio/virtio.c                        |  64 +++--
>  net/vhost-vdpa.c                          | 153 +++++++----
>  subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
>  tests/qtest/bios-tables-test.c            |  26 +-
>  tests/qtest/numa-test.c                   |   7 +-
>  tests/unit/test-uuid.c                    |  27 ++
>  tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
>  util/uuid.c                               |  14 ++
>  MAINTAINERS                               |   7 +
>  docs/interop/vhost-user.rst               |  57 +++++
>  hw/acpi/trace-events                      |  10 +-
>  hw/display/meson.build                    |   1 +
>  hw/i386/meson.build                       |   1 -
>  hw/virtio/meson.build                     |  28 ++-
>  hw/virtio/trace-events                    |   2 +-
>  tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes

Hi Michael,
There is a CI failure, probably related to the DSDT.cxl change in this
pull request:

QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img
QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
MALLOC_PERTURB_=165
G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/build/tests/qtest/bios-tables-test
--tap -k
――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
stderr:
acpi-test: Warning! DSDT binary file mismatch. Actual
[aml:/tmp/aml-O8CAC2], Expected [aml:tests/data/acpi/q35/DSDT.cxl].
See source file tests/qtest/bios-tables-test.c for instructions on how
to update expected files.
to see ASL diff between mismatched files install IASL, rebuild QEMU
from scratch and re-run tests with V=1 environment variable set**
ERROR:../tests/qtest/bios-tables-test.c:535:test_acpi_asl: assertion
failed: (all_tables_match)
(test program exited with status code -6)

Please take a look:
https://gitlab.com/qemu-project/qemu/-/jobs/5222693360

Stefan

>  tests/unit/meson.build                    |   1 +
>  74 files changed, 2192 insertions(+), 558 deletions(-)
>  create mode 100644 include/hw/virtio/vhost-user-device.h
>  create mode 100644 include/hw/virtio/virtio-dmabuf.h
>  create mode 100644 hw/display/virtio-dmabuf.c
>  delete mode 100644 hw/i386/generic_event_device_x86.c
>  create mode 100644 hw/virtio/vhost-user-device-pci.c
>  create mode 100644 hw/virtio/vhost-user-device.c
>  create mode 100644 tests/unit/test-virtio-dmabuf.c
>
>
Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Michael S. Tsirkin 7 months ago
On Wed, Oct 04, 2023 at 12:50:18PM -0400, Stefan Hajnoczi wrote:
> On Wed, 4 Oct 2023 at 04:43, Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
> >
> >   Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
> >
> > are available in the Git repository at:
> >
> >   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> >
> > for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:
> >
> >   libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
> >
> > ----------------------------------------------------------------
> > virtio,pci: features, cleanups
> >
> > vdpa:
> >       shadow vq vlan support
> >       net migration with cvq
> > cxl:
> >      dummy ACPI QTG DSM
> >      support emulating 4 HDM decoders
> >      serial number extended capability
> > virtio:
> >       hared dma-buf
> >
> > Fixes, cleanups all over the place.
> >
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> >
> > ----------------------------------------------------------------
> > Akihiko Odaki (1):
> >       amd_iommu: Fix APIC address check
> >
> > Albert Esteve (4):
> >       util/uuid: add a hash function
> >       hw/display: introduce virtio-dmabuf
> >       vhost-user: add shared_object msg
> >       libvhost-user: handle shared_object msg
> >
> > Alex Bennée (2):
> >       virtio: add vhost-user-base and a generic vhost-user-device
> >       hw/virtio: add config support to vhost-user-device
> >
> > Ani Sinha (1):
> >       hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
> >
> > Bernhard Beschow (8):
> >       hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
> >       hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
> >       hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
> >       hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
> >       hw/i386: Remove now redundant TYPE_ACPI_GED_X86
> >       hw/i386/acpi-build: Determine SMI command port just once
> >       hw/acpi: Trace GPE access in all device models, not just PIIX4
> >       hw/acpi/core: Trace enable and status registers of GPE separately
> >
> > Dave Jiang (1):
> >       hw/cxl: Add QTG _DSM support for ACPI0017 device
> >
> > David Woodhouse (1):
> >       hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
> >
> > Eugenio Pérez (9):
> >       vdpa: use first queue SVQ state for CVQ default
> >       vdpa: export vhost_vdpa_set_vring_ready
> >       vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
> >       vdpa: move vhost_vdpa_set_vring_ready to the caller
> >       vdpa: remove net cvq migration blocker
> >       vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
> >       vdpa net: fix error message setting virtio status
> >       vdpa net: stop probing if cannot set features
> >       vdpa net: follow VirtIO initialization properly at cvq isolation probing
> >
> > Hawkins Jiawei (5):
> >       virtio-net: do not reset vlan filtering at set_features
> >       virtio-net: Expose MAX_VLAN
> >       vdpa: Restore vlan filtering state
> >       vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
> >       vhost: Add count argument to vhost_svq_poll()
> >
> > Ilya Maximets (4):
> >       virtio: don't zero out memory region cache for indirect descriptors
> >       virtio: use shadow_avail_idx while checking number of heads
> >       virtio: remove unnecessary thread fence while reading next descriptor
> >       virtio: remove unused next argument from virtqueue_split_read_next_desc()
> >
> > Jonah Palmer (3):
> >       qmp: remove virtio_list, search QOM tree instead
> >       qmp: update virtio feature maps, vhost-user-gpio introspection
> >       vhost-user: move VhostUserProtocolFeature definition to header file
> >
> > Jonathan Cameron (7):
> >       tests/acpi: Allow update of DSDT.cxl
> >       tests/acpi: Update DSDT.cxl with QTG DSM
> >       hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
> >       hw/cxl: Add utility functions decoder interleave ways and target count.
> >       hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
> >       hw/cxl: Support 4 HDM decoders at all levels of topology
> >       hw/pci-bridge/cxl-upstream: Add serial number extended capability support
> >
> > Laszlo Ersek (7):
> >       vhost-user: strip superfluous whitespace
> >       vhost-user: tighten "reply_supported" scope in "set_vring_addr"
> >       vhost-user: factor out "vhost_user_write_sync"
> >       vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
> >       vhost-user: hoist "write_sync", "get_features", "get_u64"
> >       vhost-user: allow "vhost_set_vring" to wait for a reply
> >       vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
> >
> > Michael S. Tsirkin (1):
> >       pci: SLT must be RO
> >
> > Philippe Mathieu-Daudé (6):
> >       hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
> >       hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
> >       hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
> >       hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
> >       hw/virtio: Build vhost-vdpa.o once
> >       hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
> >
> > Stefan Hajnoczi (1):
> >       vdpa: fix gcc cvq_isolated uninitialized variable warning
> >
> > Vladimir Sementsov-Ogievskiy (2):
> >       pcie_sriov: unregister_vfs(): fix error path
> >       libvhost-user.c: add assertion to vu_message_read_default
> >
> >  hw/acpi/hmat.h                            |   3 +-
> >  hw/i386/acpi-common.h                     |   3 +-
> >  hw/i386/amd_iommu.h                       |   2 -
> >  hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
> >  hw/virtio/virtio-qmp.h                    |   7 -
> >  include/exec/memory.h                     |  16 +-
> >  include/hw/acpi/acpi_dev_interface.h      |   3 -
> >  include/hw/acpi/cpu.h                     |   6 +-
> >  include/hw/acpi/cxl.h                     |   1 +
> >  include/hw/acpi/generic_event_device.h    |   2 -
> >  include/hw/cxl/cxl_component.h            |  30 ++-
> >  include/hw/i386/pc.h                      |   6 +
> >  include/hw/pci/pci_bridge.h               |   3 +
> >  include/hw/virtio/vhost-backend.h         |   3 +
> >  include/hw/virtio/vhost-user-device.h     |  46 ++++
> >  include/hw/virtio/vhost-user.h            |  22 ++
> >  include/hw/virtio/vhost-vdpa.h            |   1 +
> >  include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
> >  include/hw/virtio/virtio-net.h            |   6 +
> >  include/qemu/uuid.h                       |   2 +
> >  subprojects/libvhost-user/libvhost-user.h |  55 +++-
> >  hw/acpi/acpi-x86-stub.c                   |   6 -
> >  hw/acpi/core.c                            |   9 +
> >  hw/acpi/cpu.c                             |   9 +-
> >  hw/acpi/cxl.c                             |  57 +++++
> >  hw/acpi/hmat.c                            |   1 +
> >  hw/acpi/memory_hotplug.c                  |   1 +
> >  hw/acpi/piix4.c                           |   5 -
> >  hw/core/machine.c                         |   5 +-
> >  hw/cxl/cxl-component-utils.c              |  92 ++++++-
> >  hw/cxl/cxl-host.c                         |  67 +++--
> >  hw/display/virtio-dmabuf.c                | 138 ++++++++++
> >  hw/i386/acpi-build.c                      |  14 +-
> >  hw/i386/acpi-common.c                     |   5 +-
> >  hw/i386/acpi-microvm.c                    |   3 +-
> >  hw/i386/amd_iommu.c                       |   9 +-
> >  hw/i386/generic_event_device_x86.c        |  36 ---
> >  hw/i386/microvm.c                         |   2 +-
> >  hw/i386/pc.c                              |  32 ++-
> >  hw/i386/pc_piix.c                         |   4 +
> >  hw/i386/pc_q35.c                          |   2 +
> >  hw/isa/lpc_ich9.c                         |  16 +-
> >  hw/mem/cxl_type3.c                        | 106 +++++---
> >  hw/net/virtio-net.c                       |   6 +-
> >  hw/pci-bridge/cxl_upstream.c              |  15 +-
> >  hw/pci/pci.c                              |   2 +-
> >  hw/pci/pci_bridge.c                       |  14 ++
> >  hw/pci/pcie_sriov.c                       |   9 +-
> >  hw/scsi/vhost-user-scsi.c                 |   4 -
> >  hw/virtio/vdpa-dev.c                      |   3 +
> >  hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
> >  hw/virtio/vhost-user-device-pci.c         |  71 ++++++
> >  hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
> >  hw/virtio/vhost-user-gpio.c               |   7 +
> >  hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
> >  hw/virtio/vhost-vdpa.c                    |  66 ++---
> >  hw/virtio/virtio-qmp.c                    | 139 +++++-----
> >  hw/virtio/virtio.c                        |  64 +++--
> >  net/vhost-vdpa.c                          | 153 +++++++----
> >  subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
> >  tests/qtest/bios-tables-test.c            |  26 +-
> >  tests/qtest/numa-test.c                   |   7 +-
> >  tests/unit/test-uuid.c                    |  27 ++
> >  tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
> >  util/uuid.c                               |  14 ++
> >  MAINTAINERS                               |   7 +
> >  docs/interop/vhost-user.rst               |  57 +++++
> >  hw/acpi/trace-events                      |  10 +-
> >  hw/display/meson.build                    |   1 +
> >  hw/i386/meson.build                       |   1 -
> >  hw/virtio/meson.build                     |  28 ++-
> >  hw/virtio/trace-events                    |   2 +-
> >  tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
> 
> Hi Michael,
> There is a CI failure, probably related to the DSDT.cxl change in this
> pull request:
> 
> QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img
> QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
> MALLOC_PERTURB_=165
> G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
> /home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/build/tests/qtest/bios-tables-test
> --tap -k
> ――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
> stderr:
> acpi-test: Warning! DSDT binary file mismatch. Actual
> [aml:/tmp/aml-O8CAC2], Expected [aml:tests/data/acpi/q35/DSDT.cxl].
> See source file tests/qtest/bios-tables-test.c for instructions on how
> to update expected files.
> to see ASL diff between mismatched files install IASL, rebuild QEMU
> from scratch and re-run tests with V=1 environment variable set**
> ERROR:../tests/qtest/bios-tables-test.c:535:test_acpi_asl: assertion
> failed: (all_tables_match)
> (test program exited with status code -6)
> 
> Please take a look:
> https://gitlab.com/qemu-project/qemu/-/jobs/5222693360
> 
> Stefan
> 
> >  tests/unit/meson.build                    |   1 +
> >  74 files changed, 2192 insertions(+), 558 deletions(-)
> >  create mode 100644 include/hw/virtio/vhost-user-device.h
> >  create mode 100644 include/hw/virtio/virtio-dmabuf.h
> >  create mode 100644 hw/display/virtio-dmabuf.c
> >  delete mode 100644 hw/i386/generic_event_device_x86.c
> >  create mode 100644 hw/virtio/vhost-user-device-pci.c
> >  create mode 100644 hw/virtio/vhost-user-device.c
> >  create mode 100644 tests/unit/test-virtio-dmabuf.c
> >
> >


Hmm something related to that (ubuntu on s390) environment and triggered
by fortify source somehow? Weird. My guess would be an uninitialized
variable somwhere, which if true would be serious enough. Unfortunately
IIRC IASL is not available on that platform. Is there a way to get the
binaries from that build to compare against expected files?

-- 
MST


Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Stefan Hajnoczi 7 months ago
On Wed, 4 Oct 2023 at 13:20, Michael S. Tsirkin <mst@redhat.com> wrote:
>
> On Wed, Oct 04, 2023 at 12:50:18PM -0400, Stefan Hajnoczi wrote:
> > On Wed, 4 Oct 2023 at 04:43, Michael S. Tsirkin <mst@redhat.com> wrote:
> > >
> > > The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
> > >
> > >   Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
> > >
> > > are available in the Git repository at:
> > >
> > >   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> > >
> > > for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:
> > >
> > >   libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
> > >
> > > ----------------------------------------------------------------
> > > virtio,pci: features, cleanups
> > >
> > > vdpa:
> > >       shadow vq vlan support
> > >       net migration with cvq
> > > cxl:
> > >      dummy ACPI QTG DSM
> > >      support emulating 4 HDM decoders
> > >      serial number extended capability
> > > virtio:
> > >       hared dma-buf
> > >
> > > Fixes, cleanups all over the place.
> > >
> > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > >
> > > ----------------------------------------------------------------
> > > Akihiko Odaki (1):
> > >       amd_iommu: Fix APIC address check
> > >
> > > Albert Esteve (4):
> > >       util/uuid: add a hash function
> > >       hw/display: introduce virtio-dmabuf
> > >       vhost-user: add shared_object msg
> > >       libvhost-user: handle shared_object msg
> > >
> > > Alex Bennée (2):
> > >       virtio: add vhost-user-base and a generic vhost-user-device
> > >       hw/virtio: add config support to vhost-user-device
> > >
> > > Ani Sinha (1):
> > >       hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
> > >
> > > Bernhard Beschow (8):
> > >       hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
> > >       hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
> > >       hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
> > >       hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
> > >       hw/i386: Remove now redundant TYPE_ACPI_GED_X86
> > >       hw/i386/acpi-build: Determine SMI command port just once
> > >       hw/acpi: Trace GPE access in all device models, not just PIIX4
> > >       hw/acpi/core: Trace enable and status registers of GPE separately
> > >
> > > Dave Jiang (1):
> > >       hw/cxl: Add QTG _DSM support for ACPI0017 device
> > >
> > > David Woodhouse (1):
> > >       hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
> > >
> > > Eugenio Pérez (9):
> > >       vdpa: use first queue SVQ state for CVQ default
> > >       vdpa: export vhost_vdpa_set_vring_ready
> > >       vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
> > >       vdpa: move vhost_vdpa_set_vring_ready to the caller
> > >       vdpa: remove net cvq migration blocker
> > >       vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
> > >       vdpa net: fix error message setting virtio status
> > >       vdpa net: stop probing if cannot set features
> > >       vdpa net: follow VirtIO initialization properly at cvq isolation probing
> > >
> > > Hawkins Jiawei (5):
> > >       virtio-net: do not reset vlan filtering at set_features
> > >       virtio-net: Expose MAX_VLAN
> > >       vdpa: Restore vlan filtering state
> > >       vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
> > >       vhost: Add count argument to vhost_svq_poll()
> > >
> > > Ilya Maximets (4):
> > >       virtio: don't zero out memory region cache for indirect descriptors
> > >       virtio: use shadow_avail_idx while checking number of heads
> > >       virtio: remove unnecessary thread fence while reading next descriptor
> > >       virtio: remove unused next argument from virtqueue_split_read_next_desc()
> > >
> > > Jonah Palmer (3):
> > >       qmp: remove virtio_list, search QOM tree instead
> > >       qmp: update virtio feature maps, vhost-user-gpio introspection
> > >       vhost-user: move VhostUserProtocolFeature definition to header file
> > >
> > > Jonathan Cameron (7):
> > >       tests/acpi: Allow update of DSDT.cxl
> > >       tests/acpi: Update DSDT.cxl with QTG DSM
> > >       hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
> > >       hw/cxl: Add utility functions decoder interleave ways and target count.
> > >       hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
> > >       hw/cxl: Support 4 HDM decoders at all levels of topology
> > >       hw/pci-bridge/cxl-upstream: Add serial number extended capability support
> > >
> > > Laszlo Ersek (7):
> > >       vhost-user: strip superfluous whitespace
> > >       vhost-user: tighten "reply_supported" scope in "set_vring_addr"
> > >       vhost-user: factor out "vhost_user_write_sync"
> > >       vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
> > >       vhost-user: hoist "write_sync", "get_features", "get_u64"
> > >       vhost-user: allow "vhost_set_vring" to wait for a reply
> > >       vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
> > >
> > > Michael S. Tsirkin (1):
> > >       pci: SLT must be RO
> > >
> > > Philippe Mathieu-Daudé (6):
> > >       hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
> > >       hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
> > >       hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
> > >       hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
> > >       hw/virtio: Build vhost-vdpa.o once
> > >       hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
> > >
> > > Stefan Hajnoczi (1):
> > >       vdpa: fix gcc cvq_isolated uninitialized variable warning
> > >
> > > Vladimir Sementsov-Ogievskiy (2):
> > >       pcie_sriov: unregister_vfs(): fix error path
> > >       libvhost-user.c: add assertion to vu_message_read_default
> > >
> > >  hw/acpi/hmat.h                            |   3 +-
> > >  hw/i386/acpi-common.h                     |   3 +-
> > >  hw/i386/amd_iommu.h                       |   2 -
> > >  hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
> > >  hw/virtio/virtio-qmp.h                    |   7 -
> > >  include/exec/memory.h                     |  16 +-
> > >  include/hw/acpi/acpi_dev_interface.h      |   3 -
> > >  include/hw/acpi/cpu.h                     |   6 +-
> > >  include/hw/acpi/cxl.h                     |   1 +
> > >  include/hw/acpi/generic_event_device.h    |   2 -
> > >  include/hw/cxl/cxl_component.h            |  30 ++-
> > >  include/hw/i386/pc.h                      |   6 +
> > >  include/hw/pci/pci_bridge.h               |   3 +
> > >  include/hw/virtio/vhost-backend.h         |   3 +
> > >  include/hw/virtio/vhost-user-device.h     |  46 ++++
> > >  include/hw/virtio/vhost-user.h            |  22 ++
> > >  include/hw/virtio/vhost-vdpa.h            |   1 +
> > >  include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
> > >  include/hw/virtio/virtio-net.h            |   6 +
> > >  include/qemu/uuid.h                       |   2 +
> > >  subprojects/libvhost-user/libvhost-user.h |  55 +++-
> > >  hw/acpi/acpi-x86-stub.c                   |   6 -
> > >  hw/acpi/core.c                            |   9 +
> > >  hw/acpi/cpu.c                             |   9 +-
> > >  hw/acpi/cxl.c                             |  57 +++++
> > >  hw/acpi/hmat.c                            |   1 +
> > >  hw/acpi/memory_hotplug.c                  |   1 +
> > >  hw/acpi/piix4.c                           |   5 -
> > >  hw/core/machine.c                         |   5 +-
> > >  hw/cxl/cxl-component-utils.c              |  92 ++++++-
> > >  hw/cxl/cxl-host.c                         |  67 +++--
> > >  hw/display/virtio-dmabuf.c                | 138 ++++++++++
> > >  hw/i386/acpi-build.c                      |  14 +-
> > >  hw/i386/acpi-common.c                     |   5 +-
> > >  hw/i386/acpi-microvm.c                    |   3 +-
> > >  hw/i386/amd_iommu.c                       |   9 +-
> > >  hw/i386/generic_event_device_x86.c        |  36 ---
> > >  hw/i386/microvm.c                         |   2 +-
> > >  hw/i386/pc.c                              |  32 ++-
> > >  hw/i386/pc_piix.c                         |   4 +
> > >  hw/i386/pc_q35.c                          |   2 +
> > >  hw/isa/lpc_ich9.c                         |  16 +-
> > >  hw/mem/cxl_type3.c                        | 106 +++++---
> > >  hw/net/virtio-net.c                       |   6 +-
> > >  hw/pci-bridge/cxl_upstream.c              |  15 +-
> > >  hw/pci/pci.c                              |   2 +-
> > >  hw/pci/pci_bridge.c                       |  14 ++
> > >  hw/pci/pcie_sriov.c                       |   9 +-
> > >  hw/scsi/vhost-user-scsi.c                 |   4 -
> > >  hw/virtio/vdpa-dev.c                      |   3 +
> > >  hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
> > >  hw/virtio/vhost-user-device-pci.c         |  71 ++++++
> > >  hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
> > >  hw/virtio/vhost-user-gpio.c               |   7 +
> > >  hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
> > >  hw/virtio/vhost-vdpa.c                    |  66 ++---
> > >  hw/virtio/virtio-qmp.c                    | 139 +++++-----
> > >  hw/virtio/virtio.c                        |  64 +++--
> > >  net/vhost-vdpa.c                          | 153 +++++++----
> > >  subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
> > >  tests/qtest/bios-tables-test.c            |  26 +-
> > >  tests/qtest/numa-test.c                   |   7 +-
> > >  tests/unit/test-uuid.c                    |  27 ++
> > >  tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
> > >  util/uuid.c                               |  14 ++
> > >  MAINTAINERS                               |   7 +
> > >  docs/interop/vhost-user.rst               |  57 +++++
> > >  hw/acpi/trace-events                      |  10 +-
> > >  hw/display/meson.build                    |   1 +
> > >  hw/i386/meson.build                       |   1 -
> > >  hw/virtio/meson.build                     |  28 ++-
> > >  hw/virtio/trace-events                    |   2 +-
> > >  tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
> >
> > Hi Michael,
> > There is a CI failure, probably related to the DSDT.cxl change in this
> > pull request:
> >
> > QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img
> > QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
> > MALLOC_PERTURB_=165
> > G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
> > /home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/build/tests/qtest/bios-tables-test
> > --tap -k
> > ――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
> > stderr:
> > acpi-test: Warning! DSDT binary file mismatch. Actual
> > [aml:/tmp/aml-O8CAC2], Expected [aml:tests/data/acpi/q35/DSDT.cxl].
> > See source file tests/qtest/bios-tables-test.c for instructions on how
> > to update expected files.
> > to see ASL diff between mismatched files install IASL, rebuild QEMU
> > from scratch and re-run tests with V=1 environment variable set**
> > ERROR:../tests/qtest/bios-tables-test.c:535:test_acpi_asl: assertion
> > failed: (all_tables_match)
> > (test program exited with status code -6)
> >
> > Please take a look:
> > https://gitlab.com/qemu-project/qemu/-/jobs/5222693360
> >
> > Stefan
> >
> > >  tests/unit/meson.build                    |   1 +
> > >  74 files changed, 2192 insertions(+), 558 deletions(-)
> > >  create mode 100644 include/hw/virtio/vhost-user-device.h
> > >  create mode 100644 include/hw/virtio/virtio-dmabuf.h
> > >  create mode 100644 hw/display/virtio-dmabuf.c
> > >  delete mode 100644 hw/i386/generic_event_device_x86.c
> > >  create mode 100644 hw/virtio/vhost-user-device-pci.c
> > >  create mode 100644 hw/virtio/vhost-user-device.c
> > >  create mode 100644 tests/unit/test-virtio-dmabuf.c
> > >
> > >
>
>
> Hmm something related to that (ubuntu on s390) environment and triggered
> by fortify source somehow? Weird. My guess would be an uninitialized
> variable somwhere, which if true would be serious enough. Unfortunately
> IIRC IASL is not available on that platform. Is there a way to get the
> binaries from that build to compare against expected files?

The job artifacts only include the meson logs, not the binaries:
https://gitlab.com/qemu-project/qemu/-/jobs/5222693360/artifacts/browse

Two options for reproducing this:
- Access an s390 system via Red Hat and reproduce it.
- Point me to a branch that has debugging modifications (e.g. GitLab
CI YAML that saves files you need as artifacts) and I'll run the job
on the qemu-project GitLab account for you.

Stefan

>
> --
> MST
>
Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Michael S. Tsirkin 7 months ago
On Wed, Oct 04, 2023 at 02:29:57PM -0400, Stefan Hajnoczi wrote:
> On Wed, 4 Oct 2023 at 13:20, Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > On Wed, Oct 04, 2023 at 12:50:18PM -0400, Stefan Hajnoczi wrote:
> > > On Wed, 4 Oct 2023 at 04:43, Michael S. Tsirkin <mst@redhat.com> wrote:
> > > >
> > > > The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
> > > >
> > > >   Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
> > > >
> > > > are available in the Git repository at:
> > > >
> > > >   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> > > >
> > > > for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:
> > > >
> > > >   libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
> > > >
> > > > ----------------------------------------------------------------
> > > > virtio,pci: features, cleanups
> > > >
> > > > vdpa:
> > > >       shadow vq vlan support
> > > >       net migration with cvq
> > > > cxl:
> > > >      dummy ACPI QTG DSM
> > > >      support emulating 4 HDM decoders
> > > >      serial number extended capability
> > > > virtio:
> > > >       hared dma-buf
> > > >
> > > > Fixes, cleanups all over the place.
> > > >
> > > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > > >
> > > > ----------------------------------------------------------------
> > > > Akihiko Odaki (1):
> > > >       amd_iommu: Fix APIC address check
> > > >
> > > > Albert Esteve (4):
> > > >       util/uuid: add a hash function
> > > >       hw/display: introduce virtio-dmabuf
> > > >       vhost-user: add shared_object msg
> > > >       libvhost-user: handle shared_object msg
> > > >
> > > > Alex Bennée (2):
> > > >       virtio: add vhost-user-base and a generic vhost-user-device
> > > >       hw/virtio: add config support to vhost-user-device
> > > >
> > > > Ani Sinha (1):
> > > >       hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
> > > >
> > > > Bernhard Beschow (8):
> > > >       hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
> > > >       hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
> > > >       hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
> > > >       hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
> > > >       hw/i386: Remove now redundant TYPE_ACPI_GED_X86
> > > >       hw/i386/acpi-build: Determine SMI command port just once
> > > >       hw/acpi: Trace GPE access in all device models, not just PIIX4
> > > >       hw/acpi/core: Trace enable and status registers of GPE separately
> > > >
> > > > Dave Jiang (1):
> > > >       hw/cxl: Add QTG _DSM support for ACPI0017 device
> > > >
> > > > David Woodhouse (1):
> > > >       hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
> > > >
> > > > Eugenio Pérez (9):
> > > >       vdpa: use first queue SVQ state for CVQ default
> > > >       vdpa: export vhost_vdpa_set_vring_ready
> > > >       vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
> > > >       vdpa: move vhost_vdpa_set_vring_ready to the caller
> > > >       vdpa: remove net cvq migration blocker
> > > >       vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
> > > >       vdpa net: fix error message setting virtio status
> > > >       vdpa net: stop probing if cannot set features
> > > >       vdpa net: follow VirtIO initialization properly at cvq isolation probing
> > > >
> > > > Hawkins Jiawei (5):
> > > >       virtio-net: do not reset vlan filtering at set_features
> > > >       virtio-net: Expose MAX_VLAN
> > > >       vdpa: Restore vlan filtering state
> > > >       vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
> > > >       vhost: Add count argument to vhost_svq_poll()
> > > >
> > > > Ilya Maximets (4):
> > > >       virtio: don't zero out memory region cache for indirect descriptors
> > > >       virtio: use shadow_avail_idx while checking number of heads
> > > >       virtio: remove unnecessary thread fence while reading next descriptor
> > > >       virtio: remove unused next argument from virtqueue_split_read_next_desc()
> > > >
> > > > Jonah Palmer (3):
> > > >       qmp: remove virtio_list, search QOM tree instead
> > > >       qmp: update virtio feature maps, vhost-user-gpio introspection
> > > >       vhost-user: move VhostUserProtocolFeature definition to header file
> > > >
> > > > Jonathan Cameron (7):
> > > >       tests/acpi: Allow update of DSDT.cxl
> > > >       tests/acpi: Update DSDT.cxl with QTG DSM
> > > >       hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
> > > >       hw/cxl: Add utility functions decoder interleave ways and target count.
> > > >       hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
> > > >       hw/cxl: Support 4 HDM decoders at all levels of topology
> > > >       hw/pci-bridge/cxl-upstream: Add serial number extended capability support
> > > >
> > > > Laszlo Ersek (7):
> > > >       vhost-user: strip superfluous whitespace
> > > >       vhost-user: tighten "reply_supported" scope in "set_vring_addr"
> > > >       vhost-user: factor out "vhost_user_write_sync"
> > > >       vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
> > > >       vhost-user: hoist "write_sync", "get_features", "get_u64"
> > > >       vhost-user: allow "vhost_set_vring" to wait for a reply
> > > >       vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
> > > >
> > > > Michael S. Tsirkin (1):
> > > >       pci: SLT must be RO
> > > >
> > > > Philippe Mathieu-Daudé (6):
> > > >       hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
> > > >       hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
> > > >       hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
> > > >       hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
> > > >       hw/virtio: Build vhost-vdpa.o once
> > > >       hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
> > > >
> > > > Stefan Hajnoczi (1):
> > > >       vdpa: fix gcc cvq_isolated uninitialized variable warning
> > > >
> > > > Vladimir Sementsov-Ogievskiy (2):
> > > >       pcie_sriov: unregister_vfs(): fix error path
> > > >       libvhost-user.c: add assertion to vu_message_read_default
> > > >
> > > >  hw/acpi/hmat.h                            |   3 +-
> > > >  hw/i386/acpi-common.h                     |   3 +-
> > > >  hw/i386/amd_iommu.h                       |   2 -
> > > >  hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
> > > >  hw/virtio/virtio-qmp.h                    |   7 -
> > > >  include/exec/memory.h                     |  16 +-
> > > >  include/hw/acpi/acpi_dev_interface.h      |   3 -
> > > >  include/hw/acpi/cpu.h                     |   6 +-
> > > >  include/hw/acpi/cxl.h                     |   1 +
> > > >  include/hw/acpi/generic_event_device.h    |   2 -
> > > >  include/hw/cxl/cxl_component.h            |  30 ++-
> > > >  include/hw/i386/pc.h                      |   6 +
> > > >  include/hw/pci/pci_bridge.h               |   3 +
> > > >  include/hw/virtio/vhost-backend.h         |   3 +
> > > >  include/hw/virtio/vhost-user-device.h     |  46 ++++
> > > >  include/hw/virtio/vhost-user.h            |  22 ++
> > > >  include/hw/virtio/vhost-vdpa.h            |   1 +
> > > >  include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
> > > >  include/hw/virtio/virtio-net.h            |   6 +
> > > >  include/qemu/uuid.h                       |   2 +
> > > >  subprojects/libvhost-user/libvhost-user.h |  55 +++-
> > > >  hw/acpi/acpi-x86-stub.c                   |   6 -
> > > >  hw/acpi/core.c                            |   9 +
> > > >  hw/acpi/cpu.c                             |   9 +-
> > > >  hw/acpi/cxl.c                             |  57 +++++
> > > >  hw/acpi/hmat.c                            |   1 +
> > > >  hw/acpi/memory_hotplug.c                  |   1 +
> > > >  hw/acpi/piix4.c                           |   5 -
> > > >  hw/core/machine.c                         |   5 +-
> > > >  hw/cxl/cxl-component-utils.c              |  92 ++++++-
> > > >  hw/cxl/cxl-host.c                         |  67 +++--
> > > >  hw/display/virtio-dmabuf.c                | 138 ++++++++++
> > > >  hw/i386/acpi-build.c                      |  14 +-
> > > >  hw/i386/acpi-common.c                     |   5 +-
> > > >  hw/i386/acpi-microvm.c                    |   3 +-
> > > >  hw/i386/amd_iommu.c                       |   9 +-
> > > >  hw/i386/generic_event_device_x86.c        |  36 ---
> > > >  hw/i386/microvm.c                         |   2 +-
> > > >  hw/i386/pc.c                              |  32 ++-
> > > >  hw/i386/pc_piix.c                         |   4 +
> > > >  hw/i386/pc_q35.c                          |   2 +
> > > >  hw/isa/lpc_ich9.c                         |  16 +-
> > > >  hw/mem/cxl_type3.c                        | 106 +++++---
> > > >  hw/net/virtio-net.c                       |   6 +-
> > > >  hw/pci-bridge/cxl_upstream.c              |  15 +-
> > > >  hw/pci/pci.c                              |   2 +-
> > > >  hw/pci/pci_bridge.c                       |  14 ++
> > > >  hw/pci/pcie_sriov.c                       |   9 +-
> > > >  hw/scsi/vhost-user-scsi.c                 |   4 -
> > > >  hw/virtio/vdpa-dev.c                      |   3 +
> > > >  hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
> > > >  hw/virtio/vhost-user-device-pci.c         |  71 ++++++
> > > >  hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
> > > >  hw/virtio/vhost-user-gpio.c               |   7 +
> > > >  hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
> > > >  hw/virtio/vhost-vdpa.c                    |  66 ++---
> > > >  hw/virtio/virtio-qmp.c                    | 139 +++++-----
> > > >  hw/virtio/virtio.c                        |  64 +++--
> > > >  net/vhost-vdpa.c                          | 153 +++++++----
> > > >  subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
> > > >  tests/qtest/bios-tables-test.c            |  26 +-
> > > >  tests/qtest/numa-test.c                   |   7 +-
> > > >  tests/unit/test-uuid.c                    |  27 ++
> > > >  tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
> > > >  util/uuid.c                               |  14 ++
> > > >  MAINTAINERS                               |   7 +
> > > >  docs/interop/vhost-user.rst               |  57 +++++
> > > >  hw/acpi/trace-events                      |  10 +-
> > > >  hw/display/meson.build                    |   1 +
> > > >  hw/i386/meson.build                       |   1 -
> > > >  hw/virtio/meson.build                     |  28 ++-
> > > >  hw/virtio/trace-events                    |   2 +-
> > > >  tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
> > >
> > > Hi Michael,
> > > There is a CI failure, probably related to the DSDT.cxl change in this
> > > pull request:
> > >
> > > QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img
> > > QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
> > > MALLOC_PERTURB_=165
> > > G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
> > > /home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/build/tests/qtest/bios-tables-test
> > > --tap -k
> > > ――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
> > > stderr:
> > > acpi-test: Warning! DSDT binary file mismatch. Actual
> > > [aml:/tmp/aml-O8CAC2], Expected [aml:tests/data/acpi/q35/DSDT.cxl].
> > > See source file tests/qtest/bios-tables-test.c for instructions on how
> > > to update expected files.
> > > to see ASL diff between mismatched files install IASL, rebuild QEMU
> > > from scratch and re-run tests with V=1 environment variable set**
> > > ERROR:../tests/qtest/bios-tables-test.c:535:test_acpi_asl: assertion
> > > failed: (all_tables_match)
> > > (test program exited with status code -6)
> > >
> > > Please take a look:
> > > https://gitlab.com/qemu-project/qemu/-/jobs/5222693360
> > >
> > > Stefan
> > >
> > > >  tests/unit/meson.build                    |   1 +
> > > >  74 files changed, 2192 insertions(+), 558 deletions(-)
> > > >  create mode 100644 include/hw/virtio/vhost-user-device.h
> > > >  create mode 100644 include/hw/virtio/virtio-dmabuf.h
> > > >  create mode 100644 hw/display/virtio-dmabuf.c
> > > >  delete mode 100644 hw/i386/generic_event_device_x86.c
> > > >  create mode 100644 hw/virtio/vhost-user-device-pci.c
> > > >  create mode 100644 hw/virtio/vhost-user-device.c
> > > >  create mode 100644 tests/unit/test-virtio-dmabuf.c
> > > >
> > > >
> >
> >
> > Hmm something related to that (ubuntu on s390) environment and triggered
> > by fortify source somehow? Weird. My guess would be an uninitialized
> > variable somwhere, which if true would be serious enough. Unfortunately
> > IIRC IASL is not available on that platform. Is there a way to get the
> > binaries from that build to compare against expected files?
> 
> The job artifacts only include the meson logs, not the binaries:
> https://gitlab.com/qemu-project/qemu/-/jobs/5222693360/artifacts/browse
> 
> Two options for reproducing this:
> - Access an s390 system via Red Hat and reproduce it.
> - Point me to a branch that has debugging modifications (e.g. GitLab
> CI YAML that saves files you need as artifacts) and I'll run the job
> on the qemu-project GitLab account for you.
> 
> Stefan

OK I think Thomas found the issue. The tag is now at ce0f3b032a960726c0dddfb4f81f223215179f26
and it should be fine - I dropped the DSDT.cxl changes.


> >
> > --
> > MST
> >


Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Michael S. Tsirkin 7 months ago
On Wed, Oct 04, 2023 at 12:50:18PM -0400, Stefan Hajnoczi wrote:
> On Wed, 4 Oct 2023 at 04:43, Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
> >
> >   Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
> >
> > are available in the Git repository at:
> >
> >   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> >
> > for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:
> >
> >   libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
> >
> > ----------------------------------------------------------------
> > virtio,pci: features, cleanups
> >
> > vdpa:
> >       shadow vq vlan support
> >       net migration with cvq
> > cxl:
> >      dummy ACPI QTG DSM
> >      support emulating 4 HDM decoders
> >      serial number extended capability
> > virtio:
> >       hared dma-buf
> >
> > Fixes, cleanups all over the place.
> >
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> >
> > ----------------------------------------------------------------
> > Akihiko Odaki (1):
> >       amd_iommu: Fix APIC address check
> >
> > Albert Esteve (4):
> >       util/uuid: add a hash function
> >       hw/display: introduce virtio-dmabuf
> >       vhost-user: add shared_object msg
> >       libvhost-user: handle shared_object msg
> >
> > Alex Bennée (2):
> >       virtio: add vhost-user-base and a generic vhost-user-device
> >       hw/virtio: add config support to vhost-user-device
> >
> > Ani Sinha (1):
> >       hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
> >
> > Bernhard Beschow (8):
> >       hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
> >       hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
> >       hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
> >       hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
> >       hw/i386: Remove now redundant TYPE_ACPI_GED_X86
> >       hw/i386/acpi-build: Determine SMI command port just once
> >       hw/acpi: Trace GPE access in all device models, not just PIIX4
> >       hw/acpi/core: Trace enable and status registers of GPE separately
> >
> > Dave Jiang (1):
> >       hw/cxl: Add QTG _DSM support for ACPI0017 device
> >
> > David Woodhouse (1):
> >       hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
> >
> > Eugenio Pérez (9):
> >       vdpa: use first queue SVQ state for CVQ default
> >       vdpa: export vhost_vdpa_set_vring_ready
> >       vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
> >       vdpa: move vhost_vdpa_set_vring_ready to the caller
> >       vdpa: remove net cvq migration blocker
> >       vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
> >       vdpa net: fix error message setting virtio status
> >       vdpa net: stop probing if cannot set features
> >       vdpa net: follow VirtIO initialization properly at cvq isolation probing
> >
> > Hawkins Jiawei (5):
> >       virtio-net: do not reset vlan filtering at set_features
> >       virtio-net: Expose MAX_VLAN
> >       vdpa: Restore vlan filtering state
> >       vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
> >       vhost: Add count argument to vhost_svq_poll()
> >
> > Ilya Maximets (4):
> >       virtio: don't zero out memory region cache for indirect descriptors
> >       virtio: use shadow_avail_idx while checking number of heads
> >       virtio: remove unnecessary thread fence while reading next descriptor
> >       virtio: remove unused next argument from virtqueue_split_read_next_desc()
> >
> > Jonah Palmer (3):
> >       qmp: remove virtio_list, search QOM tree instead
> >       qmp: update virtio feature maps, vhost-user-gpio introspection
> >       vhost-user: move VhostUserProtocolFeature definition to header file
> >
> > Jonathan Cameron (7):
> >       tests/acpi: Allow update of DSDT.cxl
> >       tests/acpi: Update DSDT.cxl with QTG DSM
> >       hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
> >       hw/cxl: Add utility functions decoder interleave ways and target count.
> >       hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
> >       hw/cxl: Support 4 HDM decoders at all levels of topology
> >       hw/pci-bridge/cxl-upstream: Add serial number extended capability support
> >
> > Laszlo Ersek (7):
> >       vhost-user: strip superfluous whitespace
> >       vhost-user: tighten "reply_supported" scope in "set_vring_addr"
> >       vhost-user: factor out "vhost_user_write_sync"
> >       vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
> >       vhost-user: hoist "write_sync", "get_features", "get_u64"
> >       vhost-user: allow "vhost_set_vring" to wait for a reply
> >       vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
> >
> > Michael S. Tsirkin (1):
> >       pci: SLT must be RO
> >
> > Philippe Mathieu-Daudé (6):
> >       hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
> >       hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
> >       hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
> >       hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
> >       hw/virtio: Build vhost-vdpa.o once
> >       hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
> >
> > Stefan Hajnoczi (1):
> >       vdpa: fix gcc cvq_isolated uninitialized variable warning
> >
> > Vladimir Sementsov-Ogievskiy (2):
> >       pcie_sriov: unregister_vfs(): fix error path
> >       libvhost-user.c: add assertion to vu_message_read_default
> >
> >  hw/acpi/hmat.h                            |   3 +-
> >  hw/i386/acpi-common.h                     |   3 +-
> >  hw/i386/amd_iommu.h                       |   2 -
> >  hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
> >  hw/virtio/virtio-qmp.h                    |   7 -
> >  include/exec/memory.h                     |  16 +-
> >  include/hw/acpi/acpi_dev_interface.h      |   3 -
> >  include/hw/acpi/cpu.h                     |   6 +-
> >  include/hw/acpi/cxl.h                     |   1 +
> >  include/hw/acpi/generic_event_device.h    |   2 -
> >  include/hw/cxl/cxl_component.h            |  30 ++-
> >  include/hw/i386/pc.h                      |   6 +
> >  include/hw/pci/pci_bridge.h               |   3 +
> >  include/hw/virtio/vhost-backend.h         |   3 +
> >  include/hw/virtio/vhost-user-device.h     |  46 ++++
> >  include/hw/virtio/vhost-user.h            |  22 ++
> >  include/hw/virtio/vhost-vdpa.h            |   1 +
> >  include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
> >  include/hw/virtio/virtio-net.h            |   6 +
> >  include/qemu/uuid.h                       |   2 +
> >  subprojects/libvhost-user/libvhost-user.h |  55 +++-
> >  hw/acpi/acpi-x86-stub.c                   |   6 -
> >  hw/acpi/core.c                            |   9 +
> >  hw/acpi/cpu.c                             |   9 +-
> >  hw/acpi/cxl.c                             |  57 +++++
> >  hw/acpi/hmat.c                            |   1 +
> >  hw/acpi/memory_hotplug.c                  |   1 +
> >  hw/acpi/piix4.c                           |   5 -
> >  hw/core/machine.c                         |   5 +-
> >  hw/cxl/cxl-component-utils.c              |  92 ++++++-
> >  hw/cxl/cxl-host.c                         |  67 +++--
> >  hw/display/virtio-dmabuf.c                | 138 ++++++++++
> >  hw/i386/acpi-build.c                      |  14 +-
> >  hw/i386/acpi-common.c                     |   5 +-
> >  hw/i386/acpi-microvm.c                    |   3 +-
> >  hw/i386/amd_iommu.c                       |   9 +-
> >  hw/i386/generic_event_device_x86.c        |  36 ---
> >  hw/i386/microvm.c                         |   2 +-
> >  hw/i386/pc.c                              |  32 ++-
> >  hw/i386/pc_piix.c                         |   4 +
> >  hw/i386/pc_q35.c                          |   2 +
> >  hw/isa/lpc_ich9.c                         |  16 +-
> >  hw/mem/cxl_type3.c                        | 106 +++++---
> >  hw/net/virtio-net.c                       |   6 +-
> >  hw/pci-bridge/cxl_upstream.c              |  15 +-
> >  hw/pci/pci.c                              |   2 +-
> >  hw/pci/pci_bridge.c                       |  14 ++
> >  hw/pci/pcie_sriov.c                       |   9 +-
> >  hw/scsi/vhost-user-scsi.c                 |   4 -
> >  hw/virtio/vdpa-dev.c                      |   3 +
> >  hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
> >  hw/virtio/vhost-user-device-pci.c         |  71 ++++++
> >  hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
> >  hw/virtio/vhost-user-gpio.c               |   7 +
> >  hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
> >  hw/virtio/vhost-vdpa.c                    |  66 ++---
> >  hw/virtio/virtio-qmp.c                    | 139 +++++-----
> >  hw/virtio/virtio.c                        |  64 +++--
> >  net/vhost-vdpa.c                          | 153 +++++++----
> >  subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
> >  tests/qtest/bios-tables-test.c            |  26 +-
> >  tests/qtest/numa-test.c                   |   7 +-
> >  tests/unit/test-uuid.c                    |  27 ++
> >  tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
> >  util/uuid.c                               |  14 ++
> >  MAINTAINERS                               |   7 +
> >  docs/interop/vhost-user.rst               |  57 +++++
> >  hw/acpi/trace-events                      |  10 +-
> >  hw/display/meson.build                    |   1 +
> >  hw/i386/meson.build                       |   1 -
> >  hw/virtio/meson.build                     |  28 ++-
> >  hw/virtio/trace-events                    |   2 +-
> >  tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
> 
> Hi Michael,
> There is a CI failure, probably related to the DSDT.cxl change in this
> pull request:
> 
> QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img
> QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
> MALLOC_PERTURB_=165
> G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
> /home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/build/tests/qtest/bios-tables-test
> --tap -k
> ――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
> stderr:
> acpi-test: Warning! DSDT binary file mismatch. Actual
> [aml:/tmp/aml-O8CAC2], Expected [aml:tests/data/acpi/q35/DSDT.cxl].
> See source file tests/qtest/bios-tables-test.c for instructions on how
> to update expected files.
> to see ASL diff between mismatched files install IASL, rebuild QEMU
> from scratch and re-run tests with V=1 environment variable set**
> ERROR:../tests/qtest/bios-tables-test.c:535:test_acpi_asl: assertion
> failed: (all_tables_match)
> (test program exited with status code -6)
> 
> Please take a look:
> https://gitlab.com/qemu-project/qemu/-/jobs/5222693360
> 
> Stefan

OK but .. CI seemed to pass for me. Interesting.
Could you send the link to the pipeline please?


> >  tests/unit/meson.build                    |   1 +
> >  74 files changed, 2192 insertions(+), 558 deletions(-)
> >  create mode 100644 include/hw/virtio/vhost-user-device.h
> >  create mode 100644 include/hw/virtio/virtio-dmabuf.h
> >  create mode 100644 hw/display/virtio-dmabuf.c
> >  delete mode 100644 hw/i386/generic_event_device_x86.c
> >  create mode 100644 hw/virtio/vhost-user-device-pci.c
> >  create mode 100644 hw/virtio/vhost-user-device.c
> >  create mode 100644 tests/unit/test-virtio-dmabuf.c
> >
> >


Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Stefan Hajnoczi 7 months ago
The link to the job is https://gitlab.com/qemu-project/qemu/-/jobs/5222693360.

The link to the pipeline is
https://gitlab.com/qemu-project/qemu/-/pipelines/1025613961.

On Wed, 4 Oct 2023 at 13:04, Michael S. Tsirkin <mst@redhat.com> wrote:
>
> On Wed, Oct 04, 2023 at 12:50:18PM -0400, Stefan Hajnoczi wrote:
> > On Wed, 4 Oct 2023 at 04:43, Michael S. Tsirkin <mst@redhat.com> wrote:
> > >
> > > The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
> > >
> > >   Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
> > >
> > > are available in the Git repository at:
> > >
> > >   https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> > >
> > > for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:
> > >
> > >   libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
> > >
> > > ----------------------------------------------------------------
> > > virtio,pci: features, cleanups
> > >
> > > vdpa:
> > >       shadow vq vlan support
> > >       net migration with cvq
> > > cxl:
> > >      dummy ACPI QTG DSM
> > >      support emulating 4 HDM decoders
> > >      serial number extended capability
> > > virtio:
> > >       hared dma-buf
> > >
> > > Fixes, cleanups all over the place.
> > >
> > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > >
> > > ----------------------------------------------------------------
> > > Akihiko Odaki (1):
> > >       amd_iommu: Fix APIC address check
> > >
> > > Albert Esteve (4):
> > >       util/uuid: add a hash function
> > >       hw/display: introduce virtio-dmabuf
> > >       vhost-user: add shared_object msg
> > >       libvhost-user: handle shared_object msg
> > >
> > > Alex Bennée (2):
> > >       virtio: add vhost-user-base and a generic vhost-user-device
> > >       hw/virtio: add config support to vhost-user-device
> > >
> > > Ani Sinha (1):
> > >       hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
> > >
> > > Bernhard Beschow (8):
> > >       hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
> > >       hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
> > >       hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
> > >       hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
> > >       hw/i386: Remove now redundant TYPE_ACPI_GED_X86
> > >       hw/i386/acpi-build: Determine SMI command port just once
> > >       hw/acpi: Trace GPE access in all device models, not just PIIX4
> > >       hw/acpi/core: Trace enable and status registers of GPE separately
> > >
> > > Dave Jiang (1):
> > >       hw/cxl: Add QTG _DSM support for ACPI0017 device
> > >
> > > David Woodhouse (1):
> > >       hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
> > >
> > > Eugenio Pérez (9):
> > >       vdpa: use first queue SVQ state for CVQ default
> > >       vdpa: export vhost_vdpa_set_vring_ready
> > >       vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
> > >       vdpa: move vhost_vdpa_set_vring_ready to the caller
> > >       vdpa: remove net cvq migration blocker
> > >       vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
> > >       vdpa net: fix error message setting virtio status
> > >       vdpa net: stop probing if cannot set features
> > >       vdpa net: follow VirtIO initialization properly at cvq isolation probing
> > >
> > > Hawkins Jiawei (5):
> > >       virtio-net: do not reset vlan filtering at set_features
> > >       virtio-net: Expose MAX_VLAN
> > >       vdpa: Restore vlan filtering state
> > >       vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
> > >       vhost: Add count argument to vhost_svq_poll()
> > >
> > > Ilya Maximets (4):
> > >       virtio: don't zero out memory region cache for indirect descriptors
> > >       virtio: use shadow_avail_idx while checking number of heads
> > >       virtio: remove unnecessary thread fence while reading next descriptor
> > >       virtio: remove unused next argument from virtqueue_split_read_next_desc()
> > >
> > > Jonah Palmer (3):
> > >       qmp: remove virtio_list, search QOM tree instead
> > >       qmp: update virtio feature maps, vhost-user-gpio introspection
> > >       vhost-user: move VhostUserProtocolFeature definition to header file
> > >
> > > Jonathan Cameron (7):
> > >       tests/acpi: Allow update of DSDT.cxl
> > >       tests/acpi: Update DSDT.cxl with QTG DSM
> > >       hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
> > >       hw/cxl: Add utility functions decoder interleave ways and target count.
> > >       hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
> > >       hw/cxl: Support 4 HDM decoders at all levels of topology
> > >       hw/pci-bridge/cxl-upstream: Add serial number extended capability support
> > >
> > > Laszlo Ersek (7):
> > >       vhost-user: strip superfluous whitespace
> > >       vhost-user: tighten "reply_supported" scope in "set_vring_addr"
> > >       vhost-user: factor out "vhost_user_write_sync"
> > >       vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
> > >       vhost-user: hoist "write_sync", "get_features", "get_u64"
> > >       vhost-user: allow "vhost_set_vring" to wait for a reply
> > >       vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
> > >
> > > Michael S. Tsirkin (1):
> > >       pci: SLT must be RO
> > >
> > > Philippe Mathieu-Daudé (6):
> > >       hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
> > >       hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
> > >       hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
> > >       hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
> > >       hw/virtio: Build vhost-vdpa.o once
> > >       hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
> > >
> > > Stefan Hajnoczi (1):
> > >       vdpa: fix gcc cvq_isolated uninitialized variable warning
> > >
> > > Vladimir Sementsov-Ogievskiy (2):
> > >       pcie_sriov: unregister_vfs(): fix error path
> > >       libvhost-user.c: add assertion to vu_message_read_default
> > >
> > >  hw/acpi/hmat.h                            |   3 +-
> > >  hw/i386/acpi-common.h                     |   3 +-
> > >  hw/i386/amd_iommu.h                       |   2 -
> > >  hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
> > >  hw/virtio/virtio-qmp.h                    |   7 -
> > >  include/exec/memory.h                     |  16 +-
> > >  include/hw/acpi/acpi_dev_interface.h      |   3 -
> > >  include/hw/acpi/cpu.h                     |   6 +-
> > >  include/hw/acpi/cxl.h                     |   1 +
> > >  include/hw/acpi/generic_event_device.h    |   2 -
> > >  include/hw/cxl/cxl_component.h            |  30 ++-
> > >  include/hw/i386/pc.h                      |   6 +
> > >  include/hw/pci/pci_bridge.h               |   3 +
> > >  include/hw/virtio/vhost-backend.h         |   3 +
> > >  include/hw/virtio/vhost-user-device.h     |  46 ++++
> > >  include/hw/virtio/vhost-user.h            |  22 ++
> > >  include/hw/virtio/vhost-vdpa.h            |   1 +
> > >  include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
> > >  include/hw/virtio/virtio-net.h            |   6 +
> > >  include/qemu/uuid.h                       |   2 +
> > >  subprojects/libvhost-user/libvhost-user.h |  55 +++-
> > >  hw/acpi/acpi-x86-stub.c                   |   6 -
> > >  hw/acpi/core.c                            |   9 +
> > >  hw/acpi/cpu.c                             |   9 +-
> > >  hw/acpi/cxl.c                             |  57 +++++
> > >  hw/acpi/hmat.c                            |   1 +
> > >  hw/acpi/memory_hotplug.c                  |   1 +
> > >  hw/acpi/piix4.c                           |   5 -
> > >  hw/core/machine.c                         |   5 +-
> > >  hw/cxl/cxl-component-utils.c              |  92 ++++++-
> > >  hw/cxl/cxl-host.c                         |  67 +++--
> > >  hw/display/virtio-dmabuf.c                | 138 ++++++++++
> > >  hw/i386/acpi-build.c                      |  14 +-
> > >  hw/i386/acpi-common.c                     |   5 +-
> > >  hw/i386/acpi-microvm.c                    |   3 +-
> > >  hw/i386/amd_iommu.c                       |   9 +-
> > >  hw/i386/generic_event_device_x86.c        |  36 ---
> > >  hw/i386/microvm.c                         |   2 +-
> > >  hw/i386/pc.c                              |  32 ++-
> > >  hw/i386/pc_piix.c                         |   4 +
> > >  hw/i386/pc_q35.c                          |   2 +
> > >  hw/isa/lpc_ich9.c                         |  16 +-
> > >  hw/mem/cxl_type3.c                        | 106 +++++---
> > >  hw/net/virtio-net.c                       |   6 +-
> > >  hw/pci-bridge/cxl_upstream.c              |  15 +-
> > >  hw/pci/pci.c                              |   2 +-
> > >  hw/pci/pci_bridge.c                       |  14 ++
> > >  hw/pci/pcie_sriov.c                       |   9 +-
> > >  hw/scsi/vhost-user-scsi.c                 |   4 -
> > >  hw/virtio/vdpa-dev.c                      |   3 +
> > >  hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
> > >  hw/virtio/vhost-user-device-pci.c         |  71 ++++++
> > >  hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
> > >  hw/virtio/vhost-user-gpio.c               |   7 +
> > >  hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
> > >  hw/virtio/vhost-vdpa.c                    |  66 ++---
> > >  hw/virtio/virtio-qmp.c                    | 139 +++++-----
> > >  hw/virtio/virtio.c                        |  64 +++--
> > >  net/vhost-vdpa.c                          | 153 +++++++----
> > >  subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
> > >  tests/qtest/bios-tables-test.c            |  26 +-
> > >  tests/qtest/numa-test.c                   |   7 +-
> > >  tests/unit/test-uuid.c                    |  27 ++
> > >  tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
> > >  util/uuid.c                               |  14 ++
> > >  MAINTAINERS                               |   7 +
> > >  docs/interop/vhost-user.rst               |  57 +++++
> > >  hw/acpi/trace-events                      |  10 +-
> > >  hw/display/meson.build                    |   1 +
> > >  hw/i386/meson.build                       |   1 -
> > >  hw/virtio/meson.build                     |  28 ++-
> > >  hw/virtio/trace-events                    |   2 +-
> > >  tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
> >
> > Hi Michael,
> > There is a CI failure, probably related to the DSDT.cxl change in this
> > pull request:
> >
> > QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img
> > QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
> > MALLOC_PERTURB_=165
> > G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
> > /home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/build/tests/qtest/bios-tables-test
> > --tap -k
> > ――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
> > stderr:
> > acpi-test: Warning! DSDT binary file mismatch. Actual
> > [aml:/tmp/aml-O8CAC2], Expected [aml:tests/data/acpi/q35/DSDT.cxl].
> > See source file tests/qtest/bios-tables-test.c for instructions on how
> > to update expected files.
> > to see ASL diff between mismatched files install IASL, rebuild QEMU
> > from scratch and re-run tests with V=1 environment variable set**
> > ERROR:../tests/qtest/bios-tables-test.c:535:test_acpi_asl: assertion
> > failed: (all_tables_match)
> > (test program exited with status code -6)
> >
> > Please take a look:
> > https://gitlab.com/qemu-project/qemu/-/jobs/5222693360
> >
> > Stefan
>
> OK but .. CI seemed to pass for me. Interesting.
> Could you send the link to the pipeline please?
>
>
> > >  tests/unit/meson.build                    |   1 +
> > >  74 files changed, 2192 insertions(+), 558 deletions(-)
> > >  create mode 100644 include/hw/virtio/vhost-user-device.h
> > >  create mode 100644 include/hw/virtio/virtio-dmabuf.h
> > >  create mode 100644 hw/display/virtio-dmabuf.c
> > >  delete mode 100644 hw/i386/generic_event_device_x86.c
> > >  create mode 100644 hw/virtio/vhost-user-device-pci.c
> > >  create mode 100644 hw/virtio/vhost-user-device.c
> > >  create mode 100644 tests/unit/test-virtio-dmabuf.c
> > >
> > >
>
Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Thomas Huth 7 months ago
On 04/10/2023 19.04, Michael S. Tsirkin wrote:
> On Wed, Oct 04, 2023 at 12:50:18PM -0400, Stefan Hajnoczi wrote:
>> On Wed, 4 Oct 2023 at 04:43, Michael S. Tsirkin <mst@redhat.com> wrote:
>>>
>>> The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
>>>
>>>    Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
>>>
>>> are available in the Git repository at:
>>>
>>>    https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
>>>
>>> for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:
>>>
>>>    libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
>>>
>>> ----------------------------------------------------------------
>>> virtio,pci: features, cleanups
>>>
>>> vdpa:
>>>        shadow vq vlan support
>>>        net migration with cvq
>>> cxl:
>>>       dummy ACPI QTG DSM
>>>       support emulating 4 HDM decoders
>>>       serial number extended capability
>>> virtio:
>>>        hared dma-buf
>>>
>>> Fixes, cleanups all over the place.
>>>
>>> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
>>>
>>> ----------------------------------------------------------------
>>> Akihiko Odaki (1):
>>>        amd_iommu: Fix APIC address check
>>>
>>> Albert Esteve (4):
>>>        util/uuid: add a hash function
>>>        hw/display: introduce virtio-dmabuf
>>>        vhost-user: add shared_object msg
>>>        libvhost-user: handle shared_object msg
>>>
>>> Alex Bennée (2):
>>>        virtio: add vhost-user-base and a generic vhost-user-device
>>>        hw/virtio: add config support to vhost-user-device
>>>
>>> Ani Sinha (1):
>>>        hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
>>>
>>> Bernhard Beschow (8):
>>>        hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
>>>        hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
>>>        hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
>>>        hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
>>>        hw/i386: Remove now redundant TYPE_ACPI_GED_X86
>>>        hw/i386/acpi-build: Determine SMI command port just once
>>>        hw/acpi: Trace GPE access in all device models, not just PIIX4
>>>        hw/acpi/core: Trace enable and status registers of GPE separately
>>>
>>> Dave Jiang (1):
>>>        hw/cxl: Add QTG _DSM support for ACPI0017 device
>>>
>>> David Woodhouse (1):
>>>        hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
>>>
>>> Eugenio Pérez (9):
>>>        vdpa: use first queue SVQ state for CVQ default
>>>        vdpa: export vhost_vdpa_set_vring_ready
>>>        vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
>>>        vdpa: move vhost_vdpa_set_vring_ready to the caller
>>>        vdpa: remove net cvq migration blocker
>>>        vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
>>>        vdpa net: fix error message setting virtio status
>>>        vdpa net: stop probing if cannot set features
>>>        vdpa net: follow VirtIO initialization properly at cvq isolation probing
>>>
>>> Hawkins Jiawei (5):
>>>        virtio-net: do not reset vlan filtering at set_features
>>>        virtio-net: Expose MAX_VLAN
>>>        vdpa: Restore vlan filtering state
>>>        vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
>>>        vhost: Add count argument to vhost_svq_poll()
>>>
>>> Ilya Maximets (4):
>>>        virtio: don't zero out memory region cache for indirect descriptors
>>>        virtio: use shadow_avail_idx while checking number of heads
>>>        virtio: remove unnecessary thread fence while reading next descriptor
>>>        virtio: remove unused next argument from virtqueue_split_read_next_desc()
>>>
>>> Jonah Palmer (3):
>>>        qmp: remove virtio_list, search QOM tree instead
>>>        qmp: update virtio feature maps, vhost-user-gpio introspection
>>>        vhost-user: move VhostUserProtocolFeature definition to header file
>>>
>>> Jonathan Cameron (7):
>>>        tests/acpi: Allow update of DSDT.cxl
>>>        tests/acpi: Update DSDT.cxl with QTG DSM
>>>        hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
>>>        hw/cxl: Add utility functions decoder interleave ways and target count.
>>>        hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
>>>        hw/cxl: Support 4 HDM decoders at all levels of topology
>>>        hw/pci-bridge/cxl-upstream: Add serial number extended capability support
>>>
>>> Laszlo Ersek (7):
>>>        vhost-user: strip superfluous whitespace
>>>        vhost-user: tighten "reply_supported" scope in "set_vring_addr"
>>>        vhost-user: factor out "vhost_user_write_sync"
>>>        vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
>>>        vhost-user: hoist "write_sync", "get_features", "get_u64"
>>>        vhost-user: allow "vhost_set_vring" to wait for a reply
>>>        vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
>>>
>>> Michael S. Tsirkin (1):
>>>        pci: SLT must be RO
>>>
>>> Philippe Mathieu-Daudé (6):
>>>        hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
>>>        hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
>>>        hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
>>>        hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
>>>        hw/virtio: Build vhost-vdpa.o once
>>>        hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
>>>
>>> Stefan Hajnoczi (1):
>>>        vdpa: fix gcc cvq_isolated uninitialized variable warning
>>>
>>> Vladimir Sementsov-Ogievskiy (2):
>>>        pcie_sriov: unregister_vfs(): fix error path
>>>        libvhost-user.c: add assertion to vu_message_read_default
>>>
>>>   hw/acpi/hmat.h                            |   3 +-
>>>   hw/i386/acpi-common.h                     |   3 +-
>>>   hw/i386/amd_iommu.h                       |   2 -
>>>   hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
>>>   hw/virtio/virtio-qmp.h                    |   7 -
>>>   include/exec/memory.h                     |  16 +-
>>>   include/hw/acpi/acpi_dev_interface.h      |   3 -
>>>   include/hw/acpi/cpu.h                     |   6 +-
>>>   include/hw/acpi/cxl.h                     |   1 +
>>>   include/hw/acpi/generic_event_device.h    |   2 -
>>>   include/hw/cxl/cxl_component.h            |  30 ++-
>>>   include/hw/i386/pc.h                      |   6 +
>>>   include/hw/pci/pci_bridge.h               |   3 +
>>>   include/hw/virtio/vhost-backend.h         |   3 +
>>>   include/hw/virtio/vhost-user-device.h     |  46 ++++
>>>   include/hw/virtio/vhost-user.h            |  22 ++
>>>   include/hw/virtio/vhost-vdpa.h            |   1 +
>>>   include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
>>>   include/hw/virtio/virtio-net.h            |   6 +
>>>   include/qemu/uuid.h                       |   2 +
>>>   subprojects/libvhost-user/libvhost-user.h |  55 +++-
>>>   hw/acpi/acpi-x86-stub.c                   |   6 -
>>>   hw/acpi/core.c                            |   9 +
>>>   hw/acpi/cpu.c                             |   9 +-
>>>   hw/acpi/cxl.c                             |  57 +++++
>>>   hw/acpi/hmat.c                            |   1 +
>>>   hw/acpi/memory_hotplug.c                  |   1 +
>>>   hw/acpi/piix4.c                           |   5 -
>>>   hw/core/machine.c                         |   5 +-
>>>   hw/cxl/cxl-component-utils.c              |  92 ++++++-
>>>   hw/cxl/cxl-host.c                         |  67 +++--
>>>   hw/display/virtio-dmabuf.c                | 138 ++++++++++
>>>   hw/i386/acpi-build.c                      |  14 +-
>>>   hw/i386/acpi-common.c                     |   5 +-
>>>   hw/i386/acpi-microvm.c                    |   3 +-
>>>   hw/i386/amd_iommu.c                       |   9 +-
>>>   hw/i386/generic_event_device_x86.c        |  36 ---
>>>   hw/i386/microvm.c                         |   2 +-
>>>   hw/i386/pc.c                              |  32 ++-
>>>   hw/i386/pc_piix.c                         |   4 +
>>>   hw/i386/pc_q35.c                          |   2 +
>>>   hw/isa/lpc_ich9.c                         |  16 +-
>>>   hw/mem/cxl_type3.c                        | 106 +++++---
>>>   hw/net/virtio-net.c                       |   6 +-
>>>   hw/pci-bridge/cxl_upstream.c              |  15 +-
>>>   hw/pci/pci.c                              |   2 +-
>>>   hw/pci/pci_bridge.c                       |  14 ++
>>>   hw/pci/pcie_sriov.c                       |   9 +-
>>>   hw/scsi/vhost-user-scsi.c                 |   4 -
>>>   hw/virtio/vdpa-dev.c                      |   3 +
>>>   hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
>>>   hw/virtio/vhost-user-device-pci.c         |  71 ++++++
>>>   hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
>>>   hw/virtio/vhost-user-gpio.c               |   7 +
>>>   hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
>>>   hw/virtio/vhost-vdpa.c                    |  66 ++---
>>>   hw/virtio/virtio-qmp.c                    | 139 +++++-----
>>>   hw/virtio/virtio.c                        |  64 +++--
>>>   net/vhost-vdpa.c                          | 153 +++++++----
>>>   subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
>>>   tests/qtest/bios-tables-test.c            |  26 +-
>>>   tests/qtest/numa-test.c                   |   7 +-
>>>   tests/unit/test-uuid.c                    |  27 ++
>>>   tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
>>>   util/uuid.c                               |  14 ++
>>>   MAINTAINERS                               |   7 +
>>>   docs/interop/vhost-user.rst               |  57 +++++
>>>   hw/acpi/trace-events                      |  10 +-
>>>   hw/display/meson.build                    |   1 +
>>>   hw/i386/meson.build                       |   1 -
>>>   hw/virtio/meson.build                     |  28 ++-
>>>   hw/virtio/trace-events                    |   2 +-
>>>   tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
>>
>> Hi Michael,
>> There is a CI failure, probably related to the DSDT.cxl change in this
>> pull request:
>>
>> QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img
>> QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
>> MALLOC_PERTURB_=165
>> G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
>> /home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/build/tests/qtest/bios-tables-test
>> --tap -k
>> ――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
>> stderr:
>> acpi-test: Warning! DSDT binary file mismatch. Actual
>> [aml:/tmp/aml-O8CAC2], Expected [aml:tests/data/acpi/q35/DSDT.cxl].
>> See source file tests/qtest/bios-tables-test.c for instructions on how
>> to update expected files.
>> to see ASL diff between mismatched files install IASL, rebuild QEMU
>> from scratch and re-run tests with V=1 environment variable set**
>> ERROR:../tests/qtest/bios-tables-test.c:535:test_acpi_asl: assertion
>> failed: (all_tables_match)
>> (test program exited with status code -6)
>>
>> Please take a look:
>> https://gitlab.com/qemu-project/qemu/-/jobs/5222693360
>>
>> Stefan
> 
> OK but .. CI seemed to pass for me. Interesting.
> Could you send the link to the pipeline please?

It's on a big endian s390x host ... so it's likely an endianness issue?

  Thomas


Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Michael S. Tsirkin 7 months ago
On Wed, Oct 04, 2023 at 07:40:54PM +0200, Thomas Huth wrote:
> On 04/10/2023 19.04, Michael S. Tsirkin wrote:
> > On Wed, Oct 04, 2023 at 12:50:18PM -0400, Stefan Hajnoczi wrote:
> > > On Wed, 4 Oct 2023 at 04:43, Michael S. Tsirkin <mst@redhat.com> wrote:
> > > > 
> > > > The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
> > > > 
> > > >    Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
> > > > 
> > > > are available in the Git repository at:
> > > > 
> > > >    https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
> > > > 
> > > > for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:
> > > > 
> > > >    libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
> > > > 
> > > > ----------------------------------------------------------------
> > > > virtio,pci: features, cleanups
> > > > 
> > > > vdpa:
> > > >        shadow vq vlan support
> > > >        net migration with cvq
> > > > cxl:
> > > >       dummy ACPI QTG DSM
> > > >       support emulating 4 HDM decoders
> > > >       serial number extended capability
> > > > virtio:
> > > >        hared dma-buf
> > > > 
> > > > Fixes, cleanups all over the place.
> > > > 
> > > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > > > 
> > > > ----------------------------------------------------------------
> > > > Akihiko Odaki (1):
> > > >        amd_iommu: Fix APIC address check
> > > > 
> > > > Albert Esteve (4):
> > > >        util/uuid: add a hash function
> > > >        hw/display: introduce virtio-dmabuf
> > > >        vhost-user: add shared_object msg
> > > >        libvhost-user: handle shared_object msg
> > > > 
> > > > Alex Bennée (2):
> > > >        virtio: add vhost-user-base and a generic vhost-user-device
> > > >        hw/virtio: add config support to vhost-user-device
> > > > 
> > > > Ani Sinha (1):
> > > >        hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
> > > > 
> > > > Bernhard Beschow (8):
> > > >        hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
> > > >        hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
> > > >        hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
> > > >        hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
> > > >        hw/i386: Remove now redundant TYPE_ACPI_GED_X86
> > > >        hw/i386/acpi-build: Determine SMI command port just once
> > > >        hw/acpi: Trace GPE access in all device models, not just PIIX4
> > > >        hw/acpi/core: Trace enable and status registers of GPE separately
> > > > 
> > > > Dave Jiang (1):
> > > >        hw/cxl: Add QTG _DSM support for ACPI0017 device
> > > > 
> > > > David Woodhouse (1):
> > > >        hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
> > > > 
> > > > Eugenio Pérez (9):
> > > >        vdpa: use first queue SVQ state for CVQ default
> > > >        vdpa: export vhost_vdpa_set_vring_ready
> > > >        vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
> > > >        vdpa: move vhost_vdpa_set_vring_ready to the caller
> > > >        vdpa: remove net cvq migration blocker
> > > >        vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
> > > >        vdpa net: fix error message setting virtio status
> > > >        vdpa net: stop probing if cannot set features
> > > >        vdpa net: follow VirtIO initialization properly at cvq isolation probing
> > > > 
> > > > Hawkins Jiawei (5):
> > > >        virtio-net: do not reset vlan filtering at set_features
> > > >        virtio-net: Expose MAX_VLAN
> > > >        vdpa: Restore vlan filtering state
> > > >        vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
> > > >        vhost: Add count argument to vhost_svq_poll()
> > > > 
> > > > Ilya Maximets (4):
> > > >        virtio: don't zero out memory region cache for indirect descriptors
> > > >        virtio: use shadow_avail_idx while checking number of heads
> > > >        virtio: remove unnecessary thread fence while reading next descriptor
> > > >        virtio: remove unused next argument from virtqueue_split_read_next_desc()
> > > > 
> > > > Jonah Palmer (3):
> > > >        qmp: remove virtio_list, search QOM tree instead
> > > >        qmp: update virtio feature maps, vhost-user-gpio introspection
> > > >        vhost-user: move VhostUserProtocolFeature definition to header file
> > > > 
> > > > Jonathan Cameron (7):
> > > >        tests/acpi: Allow update of DSDT.cxl
> > > >        tests/acpi: Update DSDT.cxl with QTG DSM
> > > >        hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
> > > >        hw/cxl: Add utility functions decoder interleave ways and target count.
> > > >        hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
> > > >        hw/cxl: Support 4 HDM decoders at all levels of topology
> > > >        hw/pci-bridge/cxl-upstream: Add serial number extended capability support
> > > > 
> > > > Laszlo Ersek (7):
> > > >        vhost-user: strip superfluous whitespace
> > > >        vhost-user: tighten "reply_supported" scope in "set_vring_addr"
> > > >        vhost-user: factor out "vhost_user_write_sync"
> > > >        vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
> > > >        vhost-user: hoist "write_sync", "get_features", "get_u64"
> > > >        vhost-user: allow "vhost_set_vring" to wait for a reply
> > > >        vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
> > > > 
> > > > Michael S. Tsirkin (1):
> > > >        pci: SLT must be RO
> > > > 
> > > > Philippe Mathieu-Daudé (6):
> > > >        hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
> > > >        hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
> > > >        hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
> > > >        hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
> > > >        hw/virtio: Build vhost-vdpa.o once
> > > >        hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
> > > > 
> > > > Stefan Hajnoczi (1):
> > > >        vdpa: fix gcc cvq_isolated uninitialized variable warning
> > > > 
> > > > Vladimir Sementsov-Ogievskiy (2):
> > > >        pcie_sriov: unregister_vfs(): fix error path
> > > >        libvhost-user.c: add assertion to vu_message_read_default
> > > > 
> > > >   hw/acpi/hmat.h                            |   3 +-
> > > >   hw/i386/acpi-common.h                     |   3 +-
> > > >   hw/i386/amd_iommu.h                       |   2 -
> > > >   hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
> > > >   hw/virtio/virtio-qmp.h                    |   7 -
> > > >   include/exec/memory.h                     |  16 +-
> > > >   include/hw/acpi/acpi_dev_interface.h      |   3 -
> > > >   include/hw/acpi/cpu.h                     |   6 +-
> > > >   include/hw/acpi/cxl.h                     |   1 +
> > > >   include/hw/acpi/generic_event_device.h    |   2 -
> > > >   include/hw/cxl/cxl_component.h            |  30 ++-
> > > >   include/hw/i386/pc.h                      |   6 +
> > > >   include/hw/pci/pci_bridge.h               |   3 +
> > > >   include/hw/virtio/vhost-backend.h         |   3 +
> > > >   include/hw/virtio/vhost-user-device.h     |  46 ++++
> > > >   include/hw/virtio/vhost-user.h            |  22 ++
> > > >   include/hw/virtio/vhost-vdpa.h            |   1 +
> > > >   include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
> > > >   include/hw/virtio/virtio-net.h            |   6 +
> > > >   include/qemu/uuid.h                       |   2 +
> > > >   subprojects/libvhost-user/libvhost-user.h |  55 +++-
> > > >   hw/acpi/acpi-x86-stub.c                   |   6 -
> > > >   hw/acpi/core.c                            |   9 +
> > > >   hw/acpi/cpu.c                             |   9 +-
> > > >   hw/acpi/cxl.c                             |  57 +++++
> > > >   hw/acpi/hmat.c                            |   1 +
> > > >   hw/acpi/memory_hotplug.c                  |   1 +
> > > >   hw/acpi/piix4.c                           |   5 -
> > > >   hw/core/machine.c                         |   5 +-
> > > >   hw/cxl/cxl-component-utils.c              |  92 ++++++-
> > > >   hw/cxl/cxl-host.c                         |  67 +++--
> > > >   hw/display/virtio-dmabuf.c                | 138 ++++++++++
> > > >   hw/i386/acpi-build.c                      |  14 +-
> > > >   hw/i386/acpi-common.c                     |   5 +-
> > > >   hw/i386/acpi-microvm.c                    |   3 +-
> > > >   hw/i386/amd_iommu.c                       |   9 +-
> > > >   hw/i386/generic_event_device_x86.c        |  36 ---
> > > >   hw/i386/microvm.c                         |   2 +-
> > > >   hw/i386/pc.c                              |  32 ++-
> > > >   hw/i386/pc_piix.c                         |   4 +
> > > >   hw/i386/pc_q35.c                          |   2 +
> > > >   hw/isa/lpc_ich9.c                         |  16 +-
> > > >   hw/mem/cxl_type3.c                        | 106 +++++---
> > > >   hw/net/virtio-net.c                       |   6 +-
> > > >   hw/pci-bridge/cxl_upstream.c              |  15 +-
> > > >   hw/pci/pci.c                              |   2 +-
> > > >   hw/pci/pci_bridge.c                       |  14 ++
> > > >   hw/pci/pcie_sriov.c                       |   9 +-
> > > >   hw/scsi/vhost-user-scsi.c                 |   4 -
> > > >   hw/virtio/vdpa-dev.c                      |   3 +
> > > >   hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
> > > >   hw/virtio/vhost-user-device-pci.c         |  71 ++++++
> > > >   hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
> > > >   hw/virtio/vhost-user-gpio.c               |   7 +
> > > >   hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
> > > >   hw/virtio/vhost-vdpa.c                    |  66 ++---
> > > >   hw/virtio/virtio-qmp.c                    | 139 +++++-----
> > > >   hw/virtio/virtio.c                        |  64 +++--
> > > >   net/vhost-vdpa.c                          | 153 +++++++----
> > > >   subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
> > > >   tests/qtest/bios-tables-test.c            |  26 +-
> > > >   tests/qtest/numa-test.c                   |   7 +-
> > > >   tests/unit/test-uuid.c                    |  27 ++
> > > >   tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
> > > >   util/uuid.c                               |  14 ++
> > > >   MAINTAINERS                               |   7 +
> > > >   docs/interop/vhost-user.rst               |  57 +++++
> > > >   hw/acpi/trace-events                      |  10 +-
> > > >   hw/display/meson.build                    |   1 +
> > > >   hw/i386/meson.build                       |   1 -
> > > >   hw/virtio/meson.build                     |  28 ++-
> > > >   hw/virtio/trace-events                    |   2 +-
> > > >   tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
> > > 
> > > Hi Michael,
> > > There is a CI failure, probably related to the DSDT.cxl change in this
> > > pull request:
> > > 
> > > QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img
> > > QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
> > > MALLOC_PERTURB_=165
> > > G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
> > > /home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/build/tests/qtest/bios-tables-test
> > > --tap -k
> > > ――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
> > > stderr:
> > > acpi-test: Warning! DSDT binary file mismatch. Actual
> > > [aml:/tmp/aml-O8CAC2], Expected [aml:tests/data/acpi/q35/DSDT.cxl].
> > > See source file tests/qtest/bios-tables-test.c for instructions on how
> > > to update expected files.
> > > to see ASL diff between mismatched files install IASL, rebuild QEMU
> > > from scratch and re-run tests with V=1 environment variable set**
> > > ERROR:../tests/qtest/bios-tables-test.c:535:test_acpi_asl: assertion
> > > failed: (all_tables_match)
> > > (test program exited with status code -6)
> > > 
> > > Please take a look:
> > > https://gitlab.com/qemu-project/qemu/-/jobs/5222693360
> > > 
> > > Stefan
> > 
> > OK but .. CI seemed to pass for me. Interesting.
> > Could you send the link to the pipeline please?
> 
> It's on a big endian s390x host ... so it's likely an endianness issue?
> 
>  Thomas

yes but weird thing is, it passed ci for me.

-- 
MST


Re: [PULL 00/63] virtio,pci: features, cleanups
Posted by Thomas Huth 7 months ago
On 05/10/2023 00.23, Michael S. Tsirkin wrote:
> On Wed, Oct 04, 2023 at 07:40:54PM +0200, Thomas Huth wrote:
>> On 04/10/2023 19.04, Michael S. Tsirkin wrote:
>>> On Wed, Oct 04, 2023 at 12:50:18PM -0400, Stefan Hajnoczi wrote:
>>>> On Wed, 4 Oct 2023 at 04:43, Michael S. Tsirkin <mst@redhat.com> wrote:
>>>>>
>>>>> The following changes since commit 494a6a2cf7f775d2c20fd6df9601e30606cc2014:
>>>>>
>>>>>     Merge tag 'pull-request-2023-09-25' of https://gitlab.com/thuth/qemu into staging (2023-09-25 10:10:30 -0400)
>>>>>
>>>>> are available in the Git repository at:
>>>>>
>>>>>     https://git.kernel.org/pub/scm/virt/kvm/mst/qemu.git tags/for_upstream
>>>>>
>>>>> for you to fetch changes up to dc1499091ca09db0ac7a5615a592e55f27d4965d:
>>>>>
>>>>>     libvhost-user: handle shared_object msg (2023-10-04 04:28:35 -0400)
>>>>>
>>>>> ----------------------------------------------------------------
>>>>> virtio,pci: features, cleanups
>>>>>
>>>>> vdpa:
>>>>>         shadow vq vlan support
>>>>>         net migration with cvq
>>>>> cxl:
>>>>>        dummy ACPI QTG DSM
>>>>>        support emulating 4 HDM decoders
>>>>>        serial number extended capability
>>>>> virtio:
>>>>>         hared dma-buf
>>>>>
>>>>> Fixes, cleanups all over the place.
>>>>>
>>>>> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
>>>>>
>>>>> ----------------------------------------------------------------
>>>>> Akihiko Odaki (1):
>>>>>         amd_iommu: Fix APIC address check
>>>>>
>>>>> Albert Esteve (4):
>>>>>         util/uuid: add a hash function
>>>>>         hw/display: introduce virtio-dmabuf
>>>>>         vhost-user: add shared_object msg
>>>>>         libvhost-user: handle shared_object msg
>>>>>
>>>>> Alex Bennée (2):
>>>>>         virtio: add vhost-user-base and a generic vhost-user-device
>>>>>         hw/virtio: add config support to vhost-user-device
>>>>>
>>>>> Ani Sinha (1):
>>>>>         hw/i386/pc: improve physical address space bound check for 32-bit x86 systems
>>>>>
>>>>> Bernhard Beschow (8):
>>>>>         hw/i386/acpi-build: Use pc_madt_cpu_entry() directly
>>>>>         hw/acpi/cpu: Have build_cpus_aml() take a build_madt_cpu_fn callback
>>>>>         hw/acpi/acpi_dev_interface: Remove now unused madt_cpu virtual method
>>>>>         hw/acpi/acpi_dev_interface: Remove now unused #include "hw/boards.h"
>>>>>         hw/i386: Remove now redundant TYPE_ACPI_GED_X86
>>>>>         hw/i386/acpi-build: Determine SMI command port just once
>>>>>         hw/acpi: Trace GPE access in all device models, not just PIIX4
>>>>>         hw/acpi/core: Trace enable and status registers of GPE separately
>>>>>
>>>>> Dave Jiang (1):
>>>>>         hw/cxl: Add QTG _DSM support for ACPI0017 device
>>>>>
>>>>> David Woodhouse (1):
>>>>>         hw/isa/ich9: Add comment on imperfect emulation of PIC vs. I/O APIC routing
>>>>>
>>>>> Eugenio Pérez (9):
>>>>>         vdpa: use first queue SVQ state for CVQ default
>>>>>         vdpa: export vhost_vdpa_set_vring_ready
>>>>>         vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
>>>>>         vdpa: move vhost_vdpa_set_vring_ready to the caller
>>>>>         vdpa: remove net cvq migration blocker
>>>>>         vdpa net: zero vhost_vdpa iova_tree pointer at cleanup
>>>>>         vdpa net: fix error message setting virtio status
>>>>>         vdpa net: stop probing if cannot set features
>>>>>         vdpa net: follow VirtIO initialization properly at cvq isolation probing
>>>>>
>>>>> Hawkins Jiawei (5):
>>>>>         virtio-net: do not reset vlan filtering at set_features
>>>>>         virtio-net: Expose MAX_VLAN
>>>>>         vdpa: Restore vlan filtering state
>>>>>         vdpa: Allow VIRTIO_NET_F_CTRL_VLAN in SVQ
>>>>>         vhost: Add count argument to vhost_svq_poll()
>>>>>
>>>>> Ilya Maximets (4):
>>>>>         virtio: don't zero out memory region cache for indirect descriptors
>>>>>         virtio: use shadow_avail_idx while checking number of heads
>>>>>         virtio: remove unnecessary thread fence while reading next descriptor
>>>>>         virtio: remove unused next argument from virtqueue_split_read_next_desc()
>>>>>
>>>>> Jonah Palmer (3):
>>>>>         qmp: remove virtio_list, search QOM tree instead
>>>>>         qmp: update virtio feature maps, vhost-user-gpio introspection
>>>>>         vhost-user: move VhostUserProtocolFeature definition to header file
>>>>>
>>>>> Jonathan Cameron (7):
>>>>>         tests/acpi: Allow update of DSDT.cxl
>>>>>         tests/acpi: Update DSDT.cxl with QTG DSM
>>>>>         hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c
>>>>>         hw/cxl: Add utility functions decoder interleave ways and target count.
>>>>>         hw/cxl: Fix and use same calculation for HDM decoder block size everywhere
>>>>>         hw/cxl: Support 4 HDM decoders at all levels of topology
>>>>>         hw/pci-bridge/cxl-upstream: Add serial number extended capability support
>>>>>
>>>>> Laszlo Ersek (7):
>>>>>         vhost-user: strip superfluous whitespace
>>>>>         vhost-user: tighten "reply_supported" scope in "set_vring_addr"
>>>>>         vhost-user: factor out "vhost_user_write_sync"
>>>>>         vhost-user: flatten "enforce_reply" into "vhost_user_write_sync"
>>>>>         vhost-user: hoist "write_sync", "get_features", "get_u64"
>>>>>         vhost-user: allow "vhost_set_vring" to wait for a reply
>>>>>         vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously
>>>>>
>>>>> Michael S. Tsirkin (1):
>>>>>         pci: SLT must be RO
>>>>>
>>>>> Philippe Mathieu-Daudé (6):
>>>>>         hw/virtio: Propagate page_mask to vhost_vdpa_listener_skipped_section()
>>>>>         hw/virtio: Propagate page_mask to vhost_vdpa_section_end()
>>>>>         hw/virtio/vhost-vdpa: Inline TARGET_PAGE_ALIGN() macro
>>>>>         hw/virtio/vhost-vdpa: Use target-agnostic qemu_target_page_mask()
>>>>>         hw/virtio: Build vhost-vdpa.o once
>>>>>         hw/virtio/meson: Rename softmmu_virtio_ss[] -> system_virtio_ss[]
>>>>>
>>>>> Stefan Hajnoczi (1):
>>>>>         vdpa: fix gcc cvq_isolated uninitialized variable warning
>>>>>
>>>>> Vladimir Sementsov-Ogievskiy (2):
>>>>>         pcie_sriov: unregister_vfs(): fix error path
>>>>>         libvhost-user.c: add assertion to vu_message_read_default
>>>>>
>>>>>    hw/acpi/hmat.h                            |   3 +-
>>>>>    hw/i386/acpi-common.h                     |   3 +-
>>>>>    hw/i386/amd_iommu.h                       |   2 -
>>>>>    hw/virtio/vhost-shadow-virtqueue.h        |   2 +-
>>>>>    hw/virtio/virtio-qmp.h                    |   7 -
>>>>>    include/exec/memory.h                     |  16 +-
>>>>>    include/hw/acpi/acpi_dev_interface.h      |   3 -
>>>>>    include/hw/acpi/cpu.h                     |   6 +-
>>>>>    include/hw/acpi/cxl.h                     |   1 +
>>>>>    include/hw/acpi/generic_event_device.h    |   2 -
>>>>>    include/hw/cxl/cxl_component.h            |  30 ++-
>>>>>    include/hw/i386/pc.h                      |   6 +
>>>>>    include/hw/pci/pci_bridge.h               |   3 +
>>>>>    include/hw/virtio/vhost-backend.h         |   3 +
>>>>>    include/hw/virtio/vhost-user-device.h     |  46 ++++
>>>>>    include/hw/virtio/vhost-user.h            |  22 ++
>>>>>    include/hw/virtio/vhost-vdpa.h            |   1 +
>>>>>    include/hw/virtio/virtio-dmabuf.h         | 100 ++++++++
>>>>>    include/hw/virtio/virtio-net.h            |   6 +
>>>>>    include/qemu/uuid.h                       |   2 +
>>>>>    subprojects/libvhost-user/libvhost-user.h |  55 +++-
>>>>>    hw/acpi/acpi-x86-stub.c                   |   6 -
>>>>>    hw/acpi/core.c                            |   9 +
>>>>>    hw/acpi/cpu.c                             |   9 +-
>>>>>    hw/acpi/cxl.c                             |  57 +++++
>>>>>    hw/acpi/hmat.c                            |   1 +
>>>>>    hw/acpi/memory_hotplug.c                  |   1 +
>>>>>    hw/acpi/piix4.c                           |   5 -
>>>>>    hw/core/machine.c                         |   5 +-
>>>>>    hw/cxl/cxl-component-utils.c              |  92 ++++++-
>>>>>    hw/cxl/cxl-host.c                         |  67 +++--
>>>>>    hw/display/virtio-dmabuf.c                | 138 ++++++++++
>>>>>    hw/i386/acpi-build.c                      |  14 +-
>>>>>    hw/i386/acpi-common.c                     |   5 +-
>>>>>    hw/i386/acpi-microvm.c                    |   3 +-
>>>>>    hw/i386/amd_iommu.c                       |   9 +-
>>>>>    hw/i386/generic_event_device_x86.c        |  36 ---
>>>>>    hw/i386/microvm.c                         |   2 +-
>>>>>    hw/i386/pc.c                              |  32 ++-
>>>>>    hw/i386/pc_piix.c                         |   4 +
>>>>>    hw/i386/pc_q35.c                          |   2 +
>>>>>    hw/isa/lpc_ich9.c                         |  16 +-
>>>>>    hw/mem/cxl_type3.c                        | 106 +++++---
>>>>>    hw/net/virtio-net.c                       |   6 +-
>>>>>    hw/pci-bridge/cxl_upstream.c              |  15 +-
>>>>>    hw/pci/pci.c                              |   2 +-
>>>>>    hw/pci/pci_bridge.c                       |  14 ++
>>>>>    hw/pci/pcie_sriov.c                       |   9 +-
>>>>>    hw/scsi/vhost-user-scsi.c                 |   4 -
>>>>>    hw/virtio/vdpa-dev.c                      |   3 +
>>>>>    hw/virtio/vhost-shadow-virtqueue.c        |  36 +--
>>>>>    hw/virtio/vhost-user-device-pci.c         |  71 ++++++
>>>>>    hw/virtio/vhost-user-device.c             | 380 ++++++++++++++++++++++++++++
>>>>>    hw/virtio/vhost-user-gpio.c               |   7 +
>>>>>    hw/virtio/vhost-user.c                    | 404 +++++++++++++++++++-----------
>>>>>    hw/virtio/vhost-vdpa.c                    |  66 ++---
>>>>>    hw/virtio/virtio-qmp.c                    | 139 +++++-----
>>>>>    hw/virtio/virtio.c                        |  64 +++--
>>>>>    net/vhost-vdpa.c                          | 153 +++++++----
>>>>>    subprojects/libvhost-user/libvhost-user.c | 121 +++++++++
>>>>>    tests/qtest/bios-tables-test.c            |  26 +-
>>>>>    tests/qtest/numa-test.c                   |   7 +-
>>>>>    tests/unit/test-uuid.c                    |  27 ++
>>>>>    tests/unit/test-virtio-dmabuf.c           | 137 ++++++++++
>>>>>    util/uuid.c                               |  14 ++
>>>>>    MAINTAINERS                               |   7 +
>>>>>    docs/interop/vhost-user.rst               |  57 +++++
>>>>>    hw/acpi/trace-events                      |  10 +-
>>>>>    hw/display/meson.build                    |   1 +
>>>>>    hw/i386/meson.build                       |   1 -
>>>>>    hw/virtio/meson.build                     |  28 ++-
>>>>>    hw/virtio/trace-events                    |   2 +-
>>>>>    tests/data/acpi/q35/DSDT.cxl              | Bin 9655 -> 9723 bytes
>>>>
>>>> Hi Michael,
>>>> There is a CI failure, probably related to the DSDT.cxl change in this
>>>> pull request:
>>>>
>>>> QTEST_QEMU_BINARY=./qemu-system-x86_64 QTEST_QEMU_IMG=./qemu-img
>>>> QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon
>>>> MALLOC_PERTURB_=165
>>>> G_TEST_DBUS_DAEMON=/home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/tests/dbus-vmstate-daemon.sh
>>>> /home/gitlab-runner/builds/FLaZkdt1/0/qemu-project/qemu/build/tests/qtest/bios-tables-test
>>>> --tap -k
>>>> ――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
>>>> stderr:
>>>> acpi-test: Warning! DSDT binary file mismatch. Actual
>>>> [aml:/tmp/aml-O8CAC2], Expected [aml:tests/data/acpi/q35/DSDT.cxl].
>>>> See source file tests/qtest/bios-tables-test.c for instructions on how
>>>> to update expected files.
>>>> to see ASL diff between mismatched files install IASL, rebuild QEMU
>>>> from scratch and re-run tests with V=1 environment variable set**
>>>> ERROR:../tests/qtest/bios-tables-test.c:535:test_acpi_asl: assertion
>>>> failed: (all_tables_match)
>>>> (test program exited with status code -6)
>>>>
>>>> Please take a look:
>>>> https://gitlab.com/qemu-project/qemu/-/jobs/5222693360
>>>>
>>>> Stefan
>>>
>>> OK but .. CI seemed to pass for me. Interesting.
>>> Could you send the link to the pipeline please?
>>
>> It's on a big endian s390x host ... so it's likely an endianness issue?
>>
>>   Thomas
> 
> yes but weird thing is, it passed ci for me.

If you run the CI in your forked repo, you only get the x86 runners by 
default. The s390x host is a special runner that runs on a dedicated s390x 
machine and thus only works when the CI runs in the upstream qemu-project.

  Thomas