mbox

[PULL,00/46] virtio: features,fixes

Message ID cover.1717527933.git.mst@redhat.com
State New
Headers show

Pull-request

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

Message

Michael S. Tsirkin June 4, 2024, 7:05 p.m. UTC
The following changes since commit 60b54b67c63d8f076152e0f7dccf39854dfc6a77:

  Merge tag 'pull-lu-20240526' of https://gitlab.com/rth7680/qemu into staging (2024-05-26 17:51:00 -0700)

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 bfcacf81d63a3d95f128bce3faf3564e7f98ea8b:

  hw/cxl: Fix read from bogus memory (2024-06-04 15:05:03 -0400)

----------------------------------------------------------------
virtio: features,fixes

A bunch of improvements:
- vhost dirty log is now only scanned once, not once per device
- virtio and vhost now support VIRTIO_F_NOTIFICATION_DATA
- cxl gained DCD emulation support
- pvpanic gained shutdown support
- acpi now supports Generic Port Affinity Structure
- new tests
- bugfixes

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

----------------------------------------------------------------
Alejandro Jimenez (1):
      pvpanic: Emit GUEST_PVSHUTDOWN QMP event on pvpanic shutdown signal

Christian Pötzsch (1):
      Fix vhost user assertion when sending more than one fd

Cindy Lu (2):
      virtio-pci: Fix the use of an uninitialized irqfd.
      virtio-pci: Fix the failure process in kvm_virtio_pci_vector_use_one()

Fan Ni (12):
      hw/cxl/cxl-mailbox-utils: Add dc_event_log_size field to output payload of identify memory device command
      hw/cxl/cxl-mailbox-utils: Add dynamic capacity region representative and mailbox command support
      include/hw/cxl/cxl_device: Rename mem_size as static_mem_size for type3 memory devices
      hw/mem/cxl_type3: Add support to create DC regions to type3 memory devices
      hw/mem/cxl-type3: Refactor ct3_build_cdat_entries_for_mr to take mr size instead of mr as argument
      hw/mem/cxl_type3: Add host backend and address space handling for DC regions
      hw/mem/cxl_type3: Add DC extent list representative and get DC extent list mailbox support
      hw/cxl/cxl-mailbox-utils: Add mailbox commands to support add/release dynamic capacity response
      hw/cxl/events: Add qmp interfaces to add/release dynamic capacity extents
      hw/mem/cxl_type3: Add DPA range validation for accesses to DC regions
      hw/cxl/cxl-mailbox-utils: Add superset extent release mailbox support
      hw/mem/cxl_type3: Allow to release extent superset in QMP interface

Gregory Price (2):
      hw/cxl/mailbox: change CCI cmd set structure to be a member, not a reference
      hw/cxl/mailbox: interface to add CCI commands to an existing CCI

Halil Pasic (1):
      vhost-vsock: add VIRTIO_F_RING_PACKED to feature_bits

Ira Weiny (1):
      hw/cxl: Fix read from bogus memory

Jiqian Chen (1):
      virtio-pci: only reset pm state during resetting

Jonah Palmer (5):
      virtio/virtio-pci: Handle extra notification data
      virtio: Prevent creation of device using notification-data with ioeventfd
      virtio-mmio: Handle extra notification data
      virtio-ccw: Handle extra notification data
      vhost/vhost-user: Add VIRTIO_F_NOTIFICATION_DATA to vhost feature bits

Jonathan Cameron (6):
      hw/acpi/GI: Fix trivial parameter alignment issue.
      hw/acpi: Insert an acpi-generic-node base under acpi-generic-initiator
      hw/acpi: Generic Port Affinity Structure support
      bios-tables-test: Allow for new acpihmat-generic-x test data.
      bios-tables-test: Add complex SRAT / HMAT test for GI GP
      bios-tables-test: Add data for complex numa test (GI, GP etc)

Li Feng (2):
      Revert "vhost-user: fix lost reconnect"
      vhost-user: fix lost reconnect again

Marc-André Lureau (1):
      vhost-user-gpu: fix import of DMABUF

Si-Wei Liu (2):
      vhost: dirty log should be per backend type
      vhost: Perform memory section dirty scans once per iteration

Stefano Garzarella (1):
      vhost-vdpa: check vhost_vdpa_set_vring_ready() return value

Thomas Weißschuh (7):
      scripts/update-linux-headers: Copy setup_data.h to correct directory
      linux-headers: update to 6.10-rc1
      hw/misc/pvpanic: centralize definition of supported events
      tests/qtest/pvpanic: use centralized definition of supported events
      hw/misc/pvpanic: add support for normal shutdowns
      tests/qtest/pvpanic: add tests for pvshutdown event
      Revert "docs/specs/pvpanic: mark shutdown event as not implemented"

Wafer (1):
      hw/virtio: Fix obtain the buffer id from the last descriptor

 qapi/cxl.json                               | 143 ++++++
 qapi/qom.json                               |  35 ++
 qapi/run-state.json                         |  14 +
 include/hw/acpi/acpi_generic_initiator.h    |  33 +-
 include/hw/cxl/cxl_device.h                 |  85 +++-
 include/hw/cxl/cxl_events.h                 |  18 +
 include/hw/misc/pvpanic.h                   |   6 +
 include/hw/pci/pci_bridge.h                 |   1 +
 include/hw/virtio/vhost-user.h              |   3 +-
 include/hw/virtio/vhost.h                   |   1 +
 include/hw/virtio/virtio.h                  |   2 +
 include/standard-headers/linux/ethtool.h    |  55 +++
 include/standard-headers/linux/pci_regs.h   |   6 +
 include/standard-headers/linux/pvpanic.h    |   7 +-
 include/standard-headers/linux/virtio_bt.h  |   1 -
 include/standard-headers/linux/virtio_mem.h |   2 +
 include/standard-headers/linux/virtio_net.h | 143 ++++++
 include/sysemu/runstate.h                   |   1 +
 linux-headers/asm-generic/unistd.h          |   5 +-
 linux-headers/asm-loongarch/kvm.h           |   4 +
 linux-headers/asm-mips/unistd_n32.h         |   1 +
 linux-headers/asm-mips/unistd_n64.h         |   1 +
 linux-headers/asm-mips/unistd_o32.h         |   1 +
 linux-headers/asm-powerpc/unistd_32.h       |   1 +
 linux-headers/asm-powerpc/unistd_64.h       |   1 +
 linux-headers/asm-riscv/kvm.h               |   1 +
 linux-headers/asm-s390/unistd_32.h          |   1 +
 linux-headers/asm-s390/unistd_64.h          |   1 +
 linux-headers/asm-x86/kvm.h                 |   4 +-
 linux-headers/asm-x86/unistd_32.h           |   1 +
 linux-headers/asm-x86/unistd_64.h           |   1 +
 linux-headers/asm-x86/unistd_x32.h          |   2 +
 linux-headers/linux/kvm.h                   |   4 +-
 linux-headers/linux/stddef.h                |   8 +
 linux-headers/linux/vhost.h                 |  15 +-
 hw/acpi/acpi_generic_initiator.c            | 209 ++++++---
 hw/block/vhost-user-blk.c                   |   6 +-
 hw/cxl/cxl-mailbox-utils.c                  | 658 +++++++++++++++++++++++++++-
 hw/display/vhost-user-gpu.c                 |   5 +-
 hw/mem/cxl_type3.c                          | 637 +++++++++++++++++++++++++--
 hw/mem/cxl_type3_stubs.c                    |  25 ++
 hw/misc/pvpanic-isa.c                       |   3 +-
 hw/misc/pvpanic-pci.c                       |   3 +-
 hw/misc/pvpanic.c                           |   8 +-
 hw/net/vhost_net.c                          |   2 +
 hw/pci-bridge/pci_expander_bridge.c         |   1 -
 hw/s390x/s390-virtio-ccw.c                  |  17 +-
 hw/scsi/vhost-scsi.c                        |   1 +
 hw/scsi/vhost-user-scsi.c                   |   7 +-
 hw/virtio/vhost-user-base.c                 |   5 +-
 hw/virtio/vhost-user-fs.c                   |   2 +-
 hw/virtio/vhost-user-vsock.c                |   1 +
 hw/virtio/vhost-user.c                      |  18 +-
 hw/virtio/vhost-vsock-common.c              |   1 +
 hw/virtio/vhost.c                           | 112 ++++-
 hw/virtio/virtio-mmio.c                     |  11 +-
 hw/virtio/virtio-pci.c                      |  45 +-
 hw/virtio/virtio.c                          |  45 ++
 net/vhost-vdpa.c                            |  16 +-
 subprojects/libvhost-user/libvhost-user.c   |   2 +-
 system/runstate.c                           |   6 +
 tests/qtest/bios-tables-test.c              |  92 ++++
 tests/qtest/pvpanic-pci-test.c              |  44 +-
 tests/qtest/pvpanic-test.c                  |  34 +-
 docs/specs/pvpanic.rst                      |   2 +-
 scripts/update-linux-headers.sh             |   2 +-
 tests/data/acpi/q35/APIC.acpihmat-generic-x | Bin 0 -> 136 bytes
 tests/data/acpi/q35/CEDT.acpihmat-generic-x | Bin 0 -> 68 bytes
 tests/data/acpi/q35/DSDT.acpihmat-generic-x | Bin 0 -> 10400 bytes
 tests/data/acpi/q35/HMAT.acpihmat-generic-x | Bin 0 -> 360 bytes
 tests/data/acpi/q35/SRAT.acpihmat-generic-x | Bin 0 -> 520 bytes
 71 files changed, 2407 insertions(+), 221 deletions(-)
 create mode 100644 tests/data/acpi/q35/APIC.acpihmat-generic-x
 create mode 100644 tests/data/acpi/q35/CEDT.acpihmat-generic-x
 create mode 100644 tests/data/acpi/q35/DSDT.acpihmat-generic-x
 create mode 100644 tests/data/acpi/q35/HMAT.acpihmat-generic-x
 create mode 100644 tests/data/acpi/q35/SRAT.acpihmat-generic-x

Comments

Michael S. Tsirkin June 5, 2024, 7:27 a.m. UTC | #1
On Tue, Jun 04, 2024 at 03:06:01PM -0400, Michael S. Tsirkin wrote:
> The following changes since commit 60b54b67c63d8f076152e0f7dccf39854dfc6a77:
> 
>   Merge tag 'pull-lu-20240526' of https://gitlab.com/rth7680/qemu into staging (2024-05-26 17:51:00 -0700)
> 
> 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 bfcacf81d63a3d95f128bce3faf3564e7f98ea8b:

Dropped a patch from this pull at Author's request.
New head a2da15a164ddd798227262b58507b46ad5ab0ca9
Sorry about the noise - ok like this?
Don't want to spam the list posting v2 just for this.

> 
>   hw/cxl: Fix read from bogus memory (2024-06-04 15:05:03 -0400)
> 
> ----------------------------------------------------------------
> virtio: features,fixes
> 
> A bunch of improvements:
> - vhost dirty log is now only scanned once, not once per device
> - virtio and vhost now support VIRTIO_F_NOTIFICATION_DATA
> - cxl gained DCD emulation support
> - pvpanic gained shutdown support
> - acpi now supports Generic Port Affinity Structure
> - new tests
> - bugfixes
> 
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> 
> ----------------------------------------------------------------
> Alejandro Jimenez (1):
>       pvpanic: Emit GUEST_PVSHUTDOWN QMP event on pvpanic shutdown signal
> 
> Christian Pötzsch (1):
>       Fix vhost user assertion when sending more than one fd
> 
> Cindy Lu (2):
>       virtio-pci: Fix the use of an uninitialized irqfd.

This is the patch that I dropped.


>       virtio-pci: Fix the failure process in kvm_virtio_pci_vector_use_one()
> 
> Fan Ni (12):
>       hw/cxl/cxl-mailbox-utils: Add dc_event_log_size field to output payload of identify memory device command
>       hw/cxl/cxl-mailbox-utils: Add dynamic capacity region representative and mailbox command support
>       include/hw/cxl/cxl_device: Rename mem_size as static_mem_size for type3 memory devices
>       hw/mem/cxl_type3: Add support to create DC regions to type3 memory devices
>       hw/mem/cxl-type3: Refactor ct3_build_cdat_entries_for_mr to take mr size instead of mr as argument
>       hw/mem/cxl_type3: Add host backend and address space handling for DC regions
>       hw/mem/cxl_type3: Add DC extent list representative and get DC extent list mailbox support
>       hw/cxl/cxl-mailbox-utils: Add mailbox commands to support add/release dynamic capacity response
>       hw/cxl/events: Add qmp interfaces to add/release dynamic capacity extents
>       hw/mem/cxl_type3: Add DPA range validation for accesses to DC regions
>       hw/cxl/cxl-mailbox-utils: Add superset extent release mailbox support
>       hw/mem/cxl_type3: Allow to release extent superset in QMP interface
> 
> Gregory Price (2):
>       hw/cxl/mailbox: change CCI cmd set structure to be a member, not a reference
>       hw/cxl/mailbox: interface to add CCI commands to an existing CCI
> 
> Halil Pasic (1):
>       vhost-vsock: add VIRTIO_F_RING_PACKED to feature_bits
> 
> Ira Weiny (1):
>       hw/cxl: Fix read from bogus memory
> 
> Jiqian Chen (1):
>       virtio-pci: only reset pm state during resetting
> 
> Jonah Palmer (5):
>       virtio/virtio-pci: Handle extra notification data
>       virtio: Prevent creation of device using notification-data with ioeventfd
>       virtio-mmio: Handle extra notification data
>       virtio-ccw: Handle extra notification data
>       vhost/vhost-user: Add VIRTIO_F_NOTIFICATION_DATA to vhost feature bits
> 
> Jonathan Cameron (6):
>       hw/acpi/GI: Fix trivial parameter alignment issue.
>       hw/acpi: Insert an acpi-generic-node base under acpi-generic-initiator
>       hw/acpi: Generic Port Affinity Structure support
>       bios-tables-test: Allow for new acpihmat-generic-x test data.
>       bios-tables-test: Add complex SRAT / HMAT test for GI GP
>       bios-tables-test: Add data for complex numa test (GI, GP etc)
> 
> Li Feng (2):
>       Revert "vhost-user: fix lost reconnect"
>       vhost-user: fix lost reconnect again
> 
> Marc-André Lureau (1):
>       vhost-user-gpu: fix import of DMABUF
> 
> Si-Wei Liu (2):
>       vhost: dirty log should be per backend type
>       vhost: Perform memory section dirty scans once per iteration
> 
> Stefano Garzarella (1):
>       vhost-vdpa: check vhost_vdpa_set_vring_ready() return value
> 
> Thomas Weißschuh (7):
>       scripts/update-linux-headers: Copy setup_data.h to correct directory
>       linux-headers: update to 6.10-rc1
>       hw/misc/pvpanic: centralize definition of supported events
>       tests/qtest/pvpanic: use centralized definition of supported events
>       hw/misc/pvpanic: add support for normal shutdowns
>       tests/qtest/pvpanic: add tests for pvshutdown event
>       Revert "docs/specs/pvpanic: mark shutdown event as not implemented"
> 
> Wafer (1):
>       hw/virtio: Fix obtain the buffer id from the last descriptor
> 
>  qapi/cxl.json                               | 143 ++++++
>  qapi/qom.json                               |  35 ++
>  qapi/run-state.json                         |  14 +
>  include/hw/acpi/acpi_generic_initiator.h    |  33 +-
>  include/hw/cxl/cxl_device.h                 |  85 +++-
>  include/hw/cxl/cxl_events.h                 |  18 +
>  include/hw/misc/pvpanic.h                   |   6 +
>  include/hw/pci/pci_bridge.h                 |   1 +
>  include/hw/virtio/vhost-user.h              |   3 +-
>  include/hw/virtio/vhost.h                   |   1 +
>  include/hw/virtio/virtio.h                  |   2 +
>  include/standard-headers/linux/ethtool.h    |  55 +++
>  include/standard-headers/linux/pci_regs.h   |   6 +
>  include/standard-headers/linux/pvpanic.h    |   7 +-
>  include/standard-headers/linux/virtio_bt.h  |   1 -
>  include/standard-headers/linux/virtio_mem.h |   2 +
>  include/standard-headers/linux/virtio_net.h | 143 ++++++
>  include/sysemu/runstate.h                   |   1 +
>  linux-headers/asm-generic/unistd.h          |   5 +-
>  linux-headers/asm-loongarch/kvm.h           |   4 +
>  linux-headers/asm-mips/unistd_n32.h         |   1 +
>  linux-headers/asm-mips/unistd_n64.h         |   1 +
>  linux-headers/asm-mips/unistd_o32.h         |   1 +
>  linux-headers/asm-powerpc/unistd_32.h       |   1 +
>  linux-headers/asm-powerpc/unistd_64.h       |   1 +
>  linux-headers/asm-riscv/kvm.h               |   1 +
>  linux-headers/asm-s390/unistd_32.h          |   1 +
>  linux-headers/asm-s390/unistd_64.h          |   1 +
>  linux-headers/asm-x86/kvm.h                 |   4 +-
>  linux-headers/asm-x86/unistd_32.h           |   1 +
>  linux-headers/asm-x86/unistd_64.h           |   1 +
>  linux-headers/asm-x86/unistd_x32.h          |   2 +
>  linux-headers/linux/kvm.h                   |   4 +-
>  linux-headers/linux/stddef.h                |   8 +
>  linux-headers/linux/vhost.h                 |  15 +-
>  hw/acpi/acpi_generic_initiator.c            | 209 ++++++---
>  hw/block/vhost-user-blk.c                   |   6 +-
>  hw/cxl/cxl-mailbox-utils.c                  | 658 +++++++++++++++++++++++++++-
>  hw/display/vhost-user-gpu.c                 |   5 +-
>  hw/mem/cxl_type3.c                          | 637 +++++++++++++++++++++++++--
>  hw/mem/cxl_type3_stubs.c                    |  25 ++
>  hw/misc/pvpanic-isa.c                       |   3 +-
>  hw/misc/pvpanic-pci.c                       |   3 +-
>  hw/misc/pvpanic.c                           |   8 +-
>  hw/net/vhost_net.c                          |   2 +
>  hw/pci-bridge/pci_expander_bridge.c         |   1 -
>  hw/s390x/s390-virtio-ccw.c                  |  17 +-
>  hw/scsi/vhost-scsi.c                        |   1 +
>  hw/scsi/vhost-user-scsi.c                   |   7 +-
>  hw/virtio/vhost-user-base.c                 |   5 +-
>  hw/virtio/vhost-user-fs.c                   |   2 +-
>  hw/virtio/vhost-user-vsock.c                |   1 +
>  hw/virtio/vhost-user.c                      |  18 +-
>  hw/virtio/vhost-vsock-common.c              |   1 +
>  hw/virtio/vhost.c                           | 112 ++++-
>  hw/virtio/virtio-mmio.c                     |  11 +-
>  hw/virtio/virtio-pci.c                      |  45 +-
>  hw/virtio/virtio.c                          |  45 ++
>  net/vhost-vdpa.c                            |  16 +-
>  subprojects/libvhost-user/libvhost-user.c   |   2 +-
>  system/runstate.c                           |   6 +
>  tests/qtest/bios-tables-test.c              |  92 ++++
>  tests/qtest/pvpanic-pci-test.c              |  44 +-
>  tests/qtest/pvpanic-test.c                  |  34 +-
>  docs/specs/pvpanic.rst                      |   2 +-
>  scripts/update-linux-headers.sh             |   2 +-
>  tests/data/acpi/q35/APIC.acpihmat-generic-x | Bin 0 -> 136 bytes
>  tests/data/acpi/q35/CEDT.acpihmat-generic-x | Bin 0 -> 68 bytes
>  tests/data/acpi/q35/DSDT.acpihmat-generic-x | Bin 0 -> 10400 bytes
>  tests/data/acpi/q35/HMAT.acpihmat-generic-x | Bin 0 -> 360 bytes
>  tests/data/acpi/q35/SRAT.acpihmat-generic-x | Bin 0 -> 520 bytes
>  71 files changed, 2407 insertions(+), 221 deletions(-)
>  create mode 100644 tests/data/acpi/q35/APIC.acpihmat-generic-x
>  create mode 100644 tests/data/acpi/q35/CEDT.acpihmat-generic-x
>  create mode 100644 tests/data/acpi/q35/DSDT.acpihmat-generic-x
>  create mode 100644 tests/data/acpi/q35/HMAT.acpihmat-generic-x
>  create mode 100644 tests/data/acpi/q35/SRAT.acpihmat-generic-x
>
Richard Henderson June 5, 2024, 2:44 p.m. UTC | #2
On 6/5/24 02:27, Michael S. Tsirkin wrote:
> On Tue, Jun 04, 2024 at 03:06:01PM -0400, Michael S. Tsirkin wrote:
>> The following changes since commit 60b54b67c63d8f076152e0f7dccf39854dfc6a77:
>>
>>    Merge tag 'pull-lu-20240526' of https://gitlab.com/rth7680/qemu into staging (2024-05-26 17:51:00 -0700)
>>
>> 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 bfcacf81d63a3d95f128bce3faf3564e7f98ea8b:
> 
> Dropped a patch from this pull at Author's request.
> New head a2da15a164ddd798227262b58507b46ad5ab0ca9
> Sorry about the noise - ok like this?
> Don't want to spam the list posting v2 just for this.

When you do this in future, send a new v2 cover.
However, the bios-tables-test still fails, so I won't merge this either.


r~
Peter Maydell June 25, 2024, 1:06 p.m. UTC | #3
On Tue, 4 Jun 2024 at 20:06, Michael S. Tsirkin <mst@redhat.com> wrote:
> ----------------------------------------------------------------
> virtio: features,fixes
>
> A bunch of improvements:
> - vhost dirty log is now only scanned once, not once per device
> - virtio and vhost now support VIRTIO_F_NOTIFICATION_DATA
> - cxl gained DCD emulation support
> - pvpanic gained shutdown support
> - acpi now supports Generic Port Affinity Structure
> - new tests
> - bugfixes
>
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> Cindy Lu (2):
>       virtio-pci: Fix the use of an uninitialized irqfd.
>       virtio-pci: Fix the failure process in kvm_virtio_pci_vector_use_one()

Hi -- I was wondering what happened to this virtio-pci patch,
which I reviewed. It seems like it got into this pullreq
which didn't get merged because of a bios-tables-test failure.

Michael, do you plan to respin this pullreq soon ?

-- PMM
Michael S. Tsirkin June 25, 2024, 2:01 p.m. UTC | #4
On Tue, Jun 25, 2024 at 02:06:04PM +0100, Peter Maydell wrote:
> On Tue, 4 Jun 2024 at 20:06, Michael S. Tsirkin <mst@redhat.com> wrote:
> > ----------------------------------------------------------------
> > virtio: features,fixes
> >
> > A bunch of improvements:
> > - vhost dirty log is now only scanned once, not once per device
> > - virtio and vhost now support VIRTIO_F_NOTIFICATION_DATA
> > - cxl gained DCD emulation support
> > - pvpanic gained shutdown support
> > - acpi now supports Generic Port Affinity Structure
> > - new tests
> > - bugfixes
> >
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > Cindy Lu (2):
> >       virtio-pci: Fix the use of an uninitialized irqfd.
> >       virtio-pci: Fix the failure process in kvm_virtio_pci_vector_use_one()
> 
> Hi -- I was wondering what happened to this virtio-pci patch,
> which I reviewed. It seems like it got into this pullreq
> which didn't get merged because of a bios-tables-test failure.
> 
> Michael, do you plan to respin this pullreq soon ?
> 
> -- PMM

For some reason I was sure it got merged.
Whatevs I will do a new pull req.