qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 14180d: bswap: Add the ability to store to an


From: Richard Henderson
Subject: [Qemu-commits] [qemu/qemu] 14180d: bswap: Add the ability to store to an unaligned 24...
Date: Mon, 26 Jun 2023 08:32:50 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 14180d6221502bd4b9d96fa5f1065e7cda4bcf00
      
https://github.com/qemu/qemu/commit/14180d6221502bd4b9d96fa5f1065e7cda4bcf00
  Author: Ira Weiny <ira.weiny@intel.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M docs/devel/loads-stores.rst
    M include/qemu/bswap.h

  Log Message:
  -----------
  bswap: Add the ability to store to an unaligned 24 bit field

CXL has 24 bit unaligned fields which need to be stored to.  CXL is
specified as little endian.

Define st24_le_p() and the supporting functions to store such a field
from a 32 bit host native value.

The use of b, w, l, q as the size specifier is limiting.  So "24" was
used for the size part of the function name.

Reviewed-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230526170010.574-2-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 9547754f40ee5c5e3d1dbed0fbc972caacd075e8
      
https://github.com/qemu/qemu/commit/9547754f40ee5c5e3d1dbed0fbc972caacd075e8
  Author: Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M hw/cxl/cxl-mailbox-utils.c
    M hw/mem/cxl_type3.c
    M hw/mem/cxl_type3_stubs.c
    M include/hw/cxl/cxl.h
    M include/hw/cxl/cxl_device.h
    M qapi/cxl.json

  Log Message:
  -----------
  hw/cxl: QMP based poison injection support

Inject poison using QMP command cxl-inject-poison to add an entry to the
poison list.

For now, the poison is not returned CXL.mem reads, but only via the
mailbox command Get Poison List. So a normal memory read to an address
that is on the poison list will not yet result in a synchronous exception
(and similar for partial cacheline writes).
That is left for a future patch.

See CXL rev 3.0, sec 8.2.9.8.4.1 Get Poison list (Opcode 4300h)

Kernel patches to use this interface here:
https://lore.kernel.org/linux-cxl/cover.1665606782.git.alison.schofield@intel.com/

To inject poison using QMP (telnet to the QMP port)
{ "execute": "qmp_capabilities" }

{ "execute": "cxl-inject-poison",
    "arguments": {
         "path": "/machine/peripheral/cxl-pmem0",
         "start": 2048,
         "length": 256
    }
}

Adjusted to select a device on your machine.

Note that the poison list supported is kept short enough to avoid the
complexity of state machine that is needed to handle the MORE flag.

Reviewed-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230526170010.574-3-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: ff04b207a0525b3f77b6352ce3a2e610b11ea34f
      
https://github.com/qemu/qemu/commit/ff04b207a0525b3f77b6352ce3a2e610b11ea34f
  Author: Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M hw/cxl/cxl-mailbox-utils.c

  Log Message:
  -----------
  hw/cxl: Add poison injection via the mailbox.

Very simple implementation to allow testing of corresponding
kernel code. Note that for now we track each 64 byte section
independently.  Whilst a valid implementation choice, it may
make sense to fuse entries so as to prove out more complex
corners of the kernel code.

Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230526170010.574-4-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 6bda41a69bdcee8ff7dcf75df2f9647ce55908ab
      
https://github.com/qemu/qemu/commit/6bda41a69bdcee8ff7dcf75df2f9647ce55908ab
  Author: Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M hw/cxl/cxl-mailbox-utils.c
    M hw/mem/cxl_type3.c
    M include/hw/cxl/cxl_device.h

  Log Message:
  -----------
  hw/cxl: Add clear poison mailbox command support.

Current implementation is very simple so many of the corner
cases do not exist (e.g. fragmenting larger poison list entries)

Reviewed-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230526170010.574-5-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: d7b84ddc3b99ae4dcac052a03817aeeab9d12514
      
https://github.com/qemu/qemu/commit/d7b84ddc3b99ae4dcac052a03817aeeab9d12514
  Author: Ira Weiny <ira.weiny@intel.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M hw/cxl/cxl-device-utils.c
    M include/hw/cxl/cxl_device.h
    A include/hw/cxl/cxl_events.h

  Log Message:
  -----------
  hw/cxl/events: Add event status register

The device status register block was defined.  However, there were no
individual registers nor any data wired up.

Define the event status register [CXL 3.0; 8.2.8.3.1] as part of the
device status register block.  Wire up the register and initialize the
event status for each log.

To support CXL 3.0 the version of the device status register block needs
to be 2.  Change the macro to allow for setting the version.

Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230530133603.16934-2-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 2f6b8c8f420d90579b29a96f46630e241dd2c1cc
      
https://github.com/qemu/qemu/commit/2f6b8c8f420d90579b29a96f46630e241dd2c1cc
  Author: Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M hw/cxl/cxl-mailbox-utils.c
    M include/hw/cxl/cxl_device.h

  Log Message:
  -----------
  hw/cxl: Move CXLRetCode definition to cxl_device.h

Following patches will need access to the mailbox return code
type so move it to the header.

Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230530133603.16934-3-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 22d7e3be0714f39bae43bd0c05f6e6d149a47b13
      
https://github.com/qemu/qemu/commit/22d7e3be0714f39bae43bd0c05f6e6d149a47b13
  Author: Ira Weiny <ira.weiny@intel.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    A hw/cxl/cxl-events.c
    M hw/cxl/cxl-mailbox-utils.c
    M hw/cxl/meson.build
    M hw/mem/cxl_type3.c
    M include/hw/cxl/cxl_device.h
    M include/hw/cxl/cxl_events.h

  Log Message:
  -----------
  hw/cxl/events: Wire up get/clear event mailbox commands

CXL testing is benefited from an artificial event log injection
mechanism.

Add an event log infrastructure to insert, get, and clear events from
the various logs available on a device.

Replace the stubbed out CXL Get/Clear Event mailbox commands with
commands that operate on the new infrastructure.

Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230530133603.16934-4-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 6676bb973ba53d60886b06213ec98fbd736d66a1
      
https://github.com/qemu/qemu/commit/6676bb973ba53d60886b06213ec98fbd736d66a1
  Author: Ira Weiny <ira.weiny@intel.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M hw/cxl/cxl-events.c
    M hw/cxl/cxl-mailbox-utils.c
    M hw/mem/cxl_type3.c
    M include/hw/cxl/cxl_device.h
    M include/hw/cxl/cxl_events.h

  Log Message:
  -----------
  hw/cxl/events: Add event interrupt support

Replace the stubbed out CXL Get/Set Event interrupt policy mailbox
commands.  Enable those commands to control interrupts for each of the
event log types.

Skip the standard input mailbox length on the Set command due to DCD
being optional.  Perform the checks separately.

Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Davidlohr Bueso <dave@stgolabs.net>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230530133603.16934-5-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: ea9b6d647f2f4708708d19ba1cb17d332d3eff06
      
https://github.com/qemu/qemu/commit/ea9b6d647f2f4708708d19ba1cb17d332d3eff06
  Author: Ira Weiny <ira.weiny@intel.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M hw/mem/cxl_type3.c
    M hw/mem/cxl_type3_stubs.c
    M include/hw/cxl/cxl_events.h
    M qapi/cxl.json

  Log Message:
  -----------
  hw/cxl/events: Add injection of General Media Events

To facilitate testing provide a QMP command to inject a general media
event.  The event can be added to the log specified.

Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Acked-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

Message-Id: <20230530133603.16934-6-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: b90a324eda7113b62b558aad43e2166eb52567d2
      
https://github.com/qemu/qemu/commit/b90a324eda7113b62b558aad43e2166eb52567d2
  Author: Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Date:   2023-06-22 (Thu, 22 Jun 2023)

  Changed paths:
    M hw/mem/cxl_type3.c
    M hw/mem/cxl_type3_stubs.c
    M include/hw/cxl/cxl_events.h
    M qapi/cxl.json

  Log Message:
  -----------
  hw/cxl/events: Add injection of DRAM events

Defined in CXL r3.0 8.2.9.2.1.2 DRAM Event Record, this event
provides information related to DRAM devices.

Example injection command in QMP:

{ "execute": "cxl-inject-dram-event",
    "arguments": {
        "path": "/machine/peripheral/cxl-mem0",
        "log": "informational",
        "flags": 1,
        "dpa": 1000,
        "descriptor": 3,
        "type": 3,
        "transaction-type": 192,
        "channel": 3,
        "rank": 17,
        "nibble-mask": 37421234,
        "bank-group": 7,
        "bank": 11,
        "row": 2,
        "column": 77,
        "correction-mask": [33, 44, 55,66]
    }}

Acked-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230530133603.16934-7-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: bafe03083255da3a053144b77a5fbc7dbf9494f3
      
https://github.com/qemu/qemu/commit/bafe03083255da3a053144b77a5fbc7dbf9494f3
  Author: Jonathan Cameron <Jonathan.Cameron@huawei.com>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/mem/cxl_type3.c
    M hw/mem/cxl_type3_stubs.c
    M include/hw/cxl/cxl_events.h
    M qapi/cxl.json

  Log Message:
  -----------
  hw/cxl/events: Add injection of Memory Module Events

These events include a copy of the device health information at the
time of the event. Actually using the emulated device health would
require a lot of controls to manipulate that state.  Given the aim
of this injection code is to just test the flows when events occur,
inject the contents of the device health state as well.

Future work may add more sophisticate device health emulation
including direct generation of these records when events occur
(such as a temperature threshold being crossed).  That does not
reduce the usefulness of this more basic generation of the events.

Acked-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Fan Ni <fan.ni@samsung.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Message-Id: <20230530133603.16934-8-Jonathan.Cameron@huawei.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 5c33f9783ace0b5e077060b220978d94fecb3e81
      
https://github.com/qemu/qemu/commit/5c33f9783ace0b5e077060b220978d94fecb3e81
  Author: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M backends/cryptodev-vhost-user.c
    M hw/virtio/vhost-user.c

  Log Message:
  -----------
  cryptodev-vhost-user: add asymmetric crypto support

Add asymmetric crypto support in vhost_user backend.

Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com>
Message-Id: <20230516083139.2349744-1-gmuthukrishn@marvell.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: b3b408ffb9291e887029051a522a2c968a816d22
      
https://github.com/qemu/qemu/commit/b3b408ffb9291e887029051a522a2c968a816d22
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M include/exec/target_page.h
    M softmmu/physmem.c

  Log Message:
  -----------
  softmmu: Introduce qemu_target_page_mask() helper

Since TARGET_PAGE_MASK is poisoned in target-agnostic code,
introduce the qemu_target_page_mask() helper to get this
value from target-agnostic code at runtime.

Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230524093744.88442-2-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>


  Commit: 8f691f1cb76f0591874e91eb18569a150bb3cfe0
      
https://github.com/qemu/qemu/commit/8f691f1cb76f0591874e91eb18569a150bb3cfe0
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/scsi/Kconfig
    M hw/scsi/meson.build

  Log Message:
  -----------
  hw/scsi: Introduce VHOST_SCSI_COMMON symbol in Kconfig

Instead of adding 'vhost-scsi-common.c' twice (for VHOST_SCSI and
VHOST_USER_SCSI), have it depend on VHOST_SCSI_COMMON, selected by
both symbols.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230524093744.88442-3-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>


  Commit: 04ca164ad3fc5309732e482534410a36b4713b11
      
https://github.com/qemu/qemu/commit/04ca164ad3fc5309732e482534410a36b4713b11
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/scsi/meson.build

  Log Message:
  -----------
  hw/scsi: Rearrange meson.build

We will modify this file shortly. Re-arrange it slightly first,
declaring source sets first.

No logical change.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230524093744.88442-4-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>


  Commit: 5268f5f5224ed67de63e0b91b05e410a97dbb976
      
https://github.com/qemu/qemu/commit/5268f5f5224ed67de63e0b91b05e410a97dbb976
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/scsi/meson.build

  Log Message:
  -----------
  hw/scsi: Rename target-specific source set as 'specific_virtio_scsi_ss'

Following the SCSI variable named '[specific_]scsi_ss', rename the
target-specific VirtIO/SCSI set prefixed with 'specific_'. This will
help when adding target-agnostic VirtIO/SCSI set in few commits.

No logical change.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230524093744.88442-5-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>


  Commit: 6df956299a751c1eff03a8ea791a0182a688a7cc
      
https://github.com/qemu/qemu/commit/6df956299a751c1eff03a8ea791a0182a688a7cc
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/virtio/Kconfig
    M hw/virtio/meson.build

  Log Message:
  -----------
  hw/virtio: Introduce VHOST_VSOCK_COMMON symbol in Kconfig

Instead of adding 'vhost-vsock-common.c' twice (for VHOST_VSOCK
and VHOST_USER_VSOCK), have it depend on VHOST_VSOCK_COMMON,
selected by both symbols.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230524093744.88442-6-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>


  Commit: 21e6435066bd3818969b520b69415ba62a85cd24
      
https://github.com/qemu/qemu/commit/21e6435066bd3818969b520b69415ba62a85cd24
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/virtio/virtio-mem.c

  Log Message:
  -----------
  hw/virtio/virtio-mem: Use qemu_ram_get_fd() helper

Avoid accessing RAMBlock internals, use the provided
qemu_ram_get_fd() getter to get the file descriptor.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230524093744.88442-7-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>


  Commit: a64da64ac671e81f3bae0fbf4e99fe7f8b65b668
      
https://github.com/qemu/qemu/commit/a64da64ac671e81f3bae0fbf4e99fe7f8b65b668
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/virtio/vhost-vsock-common.c

  Log Message:
  -----------
  hw/virtio/vhost-vsock: Include missing 'virtio/virtio-bus.h' header

Instead of having "virtio/virtio-bus.h" implicitly included,
explicitly include it, to avoid when rearranging headers:

  hw/virtio/vhost-vsock-common.c: In function ‘vhost_vsock_common_start’:
  hw/virtio/vhost-vsock-common.c:51:5: error: unknown type name 
‘VirtioBusClass’; did you mean ‘VirtioDeviceClass’?
     51 |     VirtioBusClass *k = VIRTIO_BUS_GET_CLASS(qbus);
        |     ^~~~~~~~~~~~~~
        |     VirtioDeviceClass
  hw/virtio/vhost-vsock-common.c:51:25: error: implicit declaration of function 
‘VIRTIO_BUS_GET_CLASS’; did you mean ‘VIRTIO_DEVICE_CLASS’? 
[-Werror=implicit-function-declaration]
     51 |     VirtioBusClass *k = VIRTIO_BUS_GET_CLASS(qbus);
        |                         ^~~~~~~~~~~~~~~~~~~~
        |                         VIRTIO_DEVICE_CLASS

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230524093744.88442-8-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>


  Commit: e414ed2c47da70381a66846cf9353f7612daa4b8
      
https://github.com/qemu/qemu/commit/e414ed2c47da70381a66846cf9353f7612daa4b8
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/virtio/virtio-iommu.c

  Log Message:
  -----------
  hw/virtio/virtio-iommu: Use target-agnostic qemu_target_page_mask()

In order to have virtio-iommu.c become target-agnostic,
we need to avoid using TARGET_PAGE_MASK. Get it with the
qemu_target_page_mask() helper.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Message-Id: <20230524093744.88442-9-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>


  Commit: 4ee4667ded5841ff9278d4e4a4c765a3220023bf
      
https://github.com/qemu/qemu/commit/4ee4667ded5841ff9278d4e4a4c765a3220023bf
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/block/dataplane/virtio-blk.c
    M hw/s390x/virtio-ccw.c
    M hw/scsi/vhost-scsi.c
    M hw/scsi/vhost-user-scsi.c
    M hw/scsi/virtio-scsi-dataplane.c
    M hw/virtio/vdpa-dev.c
    M hw/virtio/vhost-vdpa.c
    M hw/virtio/vhost-vsock-common.c
    M hw/virtio/vhost.c
    M hw/virtio/virtio-crypto.c
    M hw/virtio/virtio-iommu.c
    M hw/virtio/virtio-mem.c

  Log Message:
  -----------
  hw/virtio: Remove unnecessary 'virtio-access.h' header

None of these files use the VirtIO Load/Store API declared
by "hw/virtio/virtio-access.h". This header probably crept
in via copy/pasting, remove it.

Note, "virtio-access.h" is target-specific, so any file
including it also become tainted as target-specific.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Acked-by: Richard Henderson <richard.henderson@linaro.org>
Tested-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230524093744.88442-10-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>


  Commit: 7a0903f7ea8ac7e5b3191c9a2cfd1751b153f48c
      
https://github.com/qemu/qemu/commit/7a0903f7ea8ac7e5b3191c9a2cfd1751b153f48c
  Author: Philippe Mathieu-Daudé <philmd@linaro.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/block/dataplane/meson.build
    M hw/scsi/meson.build
    M hw/virtio/meson.build

  Log Message:
  -----------
  hw/virtio: Build various target-agnostic objects just once

The previous commit remove the unnecessary "virtio-access.h"
header. These files no longer have target-specific dependency.
Move them to the generic 'softmmu_ss' source set.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230524093744.88442-11-philmd@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 1e3ffb34f764f8ac4c003b2b2e6a775b2b073a16
      
https://github.com/qemu/qemu/commit/1e3ffb34f764f8ac4c003b2b2e6a775b2b073a16
  Author: Prasad Pandit <pjp@fedoraproject.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/virtio/vhost.c

  Log Message:
  -----------
  vhost: release memory_listener object in error path

vhost_dev_start function does not release memory_listener object
in case of an error. This may crash the guest when vhost is unable
to set memory table:

  stack trace of thread 125653:
  Program terminated with signal SIGSEGV, Segmentation fault
  #0  memory_listener_register (qemu-kvm + 0x6cda0f)
  #1  vhost_dev_start (qemu-kvm + 0x699301)
  #2  vhost_net_start (qemu-kvm + 0x45b03f)
  #3  virtio_net_set_status (qemu-kvm + 0x665672)
  #4  qmp_set_link (qemu-kvm + 0x548fd5)
  #5  net_vhost_user_event (qemu-kvm + 0x552c45)
  #6  tcp_chr_connect (qemu-kvm + 0x88d473)
  #7  tcp_chr_new_client (qemu-kvm + 0x88cf83)
  #8  tcp_chr_accept (qemu-kvm + 0x88b429)
  #9  qio_net_listener_channel_func (qemu-kvm + 0x7ac07c)
  #10 g_main_context_dispatch (libglib-2.0.so.0 + 0x54e2f)

Release memory_listener objects in the error path.

Signed-off-by: Prasad Pandit <pjp@fedoraproject.org>
Message-Id: <20230529114333.31686-2-ppandit@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Fixes: c471ad0e9b ("vhost_net: device IOTLB support")
Cc: qemu-stable@nongnu.org
Acked-by: Jason Wang <jasowang@redhat.com>


  Commit: 77ece20ba04582d94c345ac0107ddff2fd18d27a
      
https://github.com/qemu/qemu/commit/77ece20ba04582d94c345ac0107ddff2fd18d27a
  Author: Prasad Pandit <pjp@fedoraproject.org>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/virtio/vhost.c

  Log Message:
  -----------
  vhost: release virtqueue objects in error path

vhost_dev_start function does not release virtqueue objects when
event_notifier_init() function fails. Release virtqueue objects
and log a message about function failure.

Signed-off-by: Prasad Pandit <pjp@fedoraproject.org>
Message-Id: <20230529114333.31686-3-ppandit@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Fixes: f9a09ca3ea ("vhost: add support for configure interrupt")
Reviewed-by: Peter Xu <peterx@redhat.com>
Cc: qemu-stable@nongnu.org
Acked-by: Jason Wang <jasowang@redhat.com>


  Commit: 8eb85fb5ac60bfb6ee4c729cc087078d490670c4
      
https://github.com/qemu/qemu/commit/8eb85fb5ac60bfb6ee4c729cc087078d490670c4
  Author: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/pci/pci.c

  Log Message:
  -----------
  pci: ROM preallocation for incoming migration

On incoming migration we have the following sequence to load option
ROM:

1. On device realize we do normal load ROM from the file

2. Than, on incoming migration we rewrite ROM from the incoming RAM
   block. If sizes mismatch we fail, like this:

    Size mismatch: 0000:00:03.0/virtio-net-pci.rom: 0x40000 != 0x80000: Invalid 
argument

This is not ideal when we migrate to updated distribution: we have to
keep old ROM files in new distribution and be careful around romfile
property to load correct ROM file. Which is loaded actually just to
allocate the ROM with correct length.

Note, that romsize property doesn't really help: if we try to specify
it when default romfile is larger, it fails with something like:

    romfile "efi-virtio.rom" (160768 bytes) is too large for ROM size 65536

Let's just ignore ROM file when romsize is specified and we are in
incoming migration state. In other words, we need only to preallocate
ROM of specified size, local ROM file is unrelated.

This way:

If romsize was specified on source, we just use same commandline as on
source, and migration will work independently of local ROM files on
target.

If romsize was not specified on source (and we have mismatching local
ROM file on target host), we have to specify romsize on target to match
source romsize. romfile parameter may be kept same as on source or may
be dropped, the file is not loaded anyway.

As a bonus we avoid extra reading from ROM file on target.

Note: when we don't have romsize parameter on source command line and
need it for target, it may be calculated as aligned up to power of two
size of ROM file on source (if we know, which file is it) or,
alternatively it may be retrieved from source QEMU by QMP qom-get
command, like

  { "execute": "qom-get",
    "arguments": {
      "path": "/machine/peripheral/CARD_ID/virtio-net-pci.rom[0]",
      "property": "size" } }

Note: we have extra initialization of size variable to zero in
      pci_add_option_rom to avoid false-positive
      "error: ‘size’ may be used uninitialized"

Suggested-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Message-Id: <20230522201740.88960-2-vsementsov@yandex-team.ru>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 25c893037b89ddd4e42927a2a9b524dbbc0c34a3
      
https://github.com/qemu/qemu/commit/25c893037b89ddd4e42927a2a9b524dbbc0c34a3
  Author: David Hildenbrand <david@redhat.com>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M hw/virtio/virtio-mem.c

  Log Message:
  -----------
  virtio-mem: Simplify bitmap handling and virtio_mem_set_block_state()

Let's separate plug and unplug handling to prepare for future changes
and make the code a bit easier to read -- working on block states
(plugged/unplugged) instead of on a bitmap.

Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Gavin Shan <gshan@redhat.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
Message-Id: <20230523183036.517957-1-david@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 0f2bb0bf38b04e9dfdc32ce5c762dd317f5a4c5a
      
https://github.com/qemu/qemu/commit/0f2bb0bf38b04e9dfdc32ce5c762dd317f5a4c5a
  Author: Eugenio Pérez <eperezma@redhat.com>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vdpa: return errno in vhost_vdpa_get_vring_group error

We need to tell in the caller, as some errors are expected in a normal
workflow.  In particular, parent drivers in recent kernels with
VHOST_BACKEND_F_IOTLB_ASID may not support vring groups.  In that case,
-ENOTSUP is returned.

This is the case of vp_vdpa in Linux 6.2.

Next patches in this series will use that information to know if it must
abort or not.  Also, next patches return properly an errp instead of
printing with error_report.

Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id: <20230526153143.470745-2-eperezma@redhat.com>
Tested-by: Lei Yang <leiyang@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 152128d646973ed298d41dafd7a5bccff43336c8
      
https://github.com/qemu/qemu/commit/152128d646973ed298d41dafd7a5bccff43336c8
  Author: Eugenio Pérez <eperezma@redhat.com>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vdpa: move CVQ isolation check to net_init_vhost_vdpa

Evaluating it at start time instead of initialization time may make the
guest capable of dynamically adding or removing migration blockers.

Also, moving to initialization reduces the number of ioctls in the
migration, reducing failure possibilities.

As a drawback we need to check for CVQ isolation twice: one time with no
MQ negotiated and another one acking it, as long as the device supports
it.  This is because Vring ASID / group management is based on vq
indexes, but we don't know the index of CVQ before negotiating MQ.

Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id: <20230526153143.470745-3-eperezma@redhat.com>
Tested-by: Lei Yang <leiyang@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>


  Commit: a1f85cff902f3260d85c74ec11d4c4b182cead80
      
https://github.com/qemu/qemu/commit/a1f85cff902f3260d85c74ec11d4c4b182cead80
  Author: zhenwei pi <pizhenwei@bytedance.com>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    M backends/cryptodev.c

  Log Message:
  -----------
  cryptodev: fix memory leak during stats query

object_get_canonical_path already returns newly allocated memory, this
means no additional g_strdup required. Remove g_strdup to avoid memory
leak.

Fixes: Coverity CID 1508074
Fixes: f2b901098 ("cryptodev: Support query-stats QMP command")
Cc: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
Message-Id: <20230503115437.262469-1-pizhenwei@bytedance.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 42b1b9d7db48e72b10760869de20070b4afb6c2c
      
https://github.com/qemu/qemu/commit/42b1b9d7db48e72b10760869de20070b4afb6c2c
  Author: BALATON Zoltan <balaton@eik.bme.hu>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/acpi/core.c

  Log Message:
  -----------
  hw/acpi: Fix PM control register access

On pegasos2 which has ACPI as part of VT8231 south bridge the board
firmware writes PM control register by accessing the second byte so
addr will be 1. This wasn't handled correctly and the write went to
addr 0 instead. Remove the acpi_pm1_cnt_write() function which is used
only once and does not take addr into account and handle non-zero
address in acpi_pm_cnt_{read|write}. This fixes ACPI shutdown with
pegasos2 firmware.

The issue below is possibly related to the same memory core bug.

Link: https://gitlab.com/qemu-project/qemu/-/issues/360
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Message-Id: <20230607200125.A9988746377@zero.eik.bme.hu>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: bf376f3020dfd7bcb2c4158b4ffa85c04d44f56d
      
https://github.com/qemu/qemu/commit/bf376f3020dfd7bcb2c4158b4ffa85c04d44f56d
  Author: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M include/hw/i386/pc.h
    M tests/qtest/bios-tables-test-allowed-diff.h

  Log Message:
  -----------
  hw/i386/pc: Default to use SMBIOS 3.0 for newer machine models

Currently, pc-q35 and pc-i44fx machine models are default to use SMBIOS 2.8
(32-bit entry point). Since SMBIOS 3.0 (64-bit entry point) is now fully
supported since QEMU 7.0, default to use SMBIOS 3.0 for newer machine
models. This is necessary to avoid the following message when launching
a VM with large number of vcpus.

   "SMBIOS 2.1 table length 66822 exceeds 65535"

Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Message-Id: <20230607205717.737749-2-suravee.suthikulpanit@amd.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>


  Commit: c85cad8105e647e6aae1b0d8405c49d91994b158
      
https://github.com/qemu/qemu/commit/c85cad8105e647e6aae1b0d8405c49d91994b158
  Author: Michael S. Tsirkin <mst@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M tests/data/acpi/q35/SSDT.dimmpxm
    M tests/qtest/bios-tables-test-allowed-diff.h

  Log Message:
  -----------
  tests/data/acpi: update after SMBIOS 2.0 change

Switching to SMBIOS3.0 by default shifts some addresses, so we get this
change in tests/data/acpi/q35/SSDT.dimmpxm :

@@ -389,6 +389,6 @@
         }
     }

-    Name (MEMA, 0x07FFE000)
+    Name (MEMA, 0x07FFF000)
 }

update the expected file to match.

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


  Commit: e0001297eb2f8569e950e55dbda8ad686e4155fb
      
https://github.com/qemu/qemu/commit/e0001297eb2f8569e950e55dbda8ad686e4155fb
  Author: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/i386/pc_q35.c

  Log Message:
  -----------
  pc: q35: Bump max_cpus to 1024

Since KVM_MAX_VCPUS is currently defined to 1024 for x86 as shown in
arch/x86/include/asm/kvm_host.h, update QEMU limits to the same number.

In case KVM could not support the specified number of vcpus, QEMU would
return the following error message:

  qemu-system-x86_64: kvm_init_vcpu: kvm_get_vcpu failed (xxx): Invalid argument

Also, keep max_cpus at 288 for machine version 8.0 and older.

Cc: Igor Mammedov <imammedo@redhat.com>
Cc: Daniel P. Berrangé <berrange@redhat.com>
Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Julia Suvorova <jusual@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Message-Id: <20230607205717.737749-3-suravee.suthikulpanit@amd.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


  Commit: 8bc0049eadafb984d305c847cedff550b58e5fc0
      
https://github.com/qemu/qemu/commit/8bc0049eadafb984d305c847cedff550b58e5fc0
  Author: Eugenio Pérez <eperezma@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vdpa: do not block migration if device has cvq and x-svq=on

It was a mistake to forbid in all cases, as SVQ is already able to send
all the CVQ messages before start forwarding data vqs.  It actually
caused a regression, making impossible to migrate device previously
migratable.

Fixes: 36e4647247f2 ("vdpa: add vhost_vdpa_net_valid_svq_features")
Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id: <20230602143854.1879091-2-eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Lei Yang <leiyang@redhat.com>


  Commit: 915bf6ccd7a5c9b6cbea7a72f153597d1b98834f
      
https://github.com/qemu/qemu/commit/915bf6ccd7a5c9b6cbea7a72f153597d1b98834f
  Author: Eugenio Pérez <eperezma@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vdpa: reorder vhost_vdpa_net_cvq_cmd_page_len function

We need to call it from resource cleanup context, as munmap needs the
size of the mappings.

Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230602143854.1879091-3-eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: babf8b87127ae809b31b3c0a117dcbc91aaf9aba
      
https://github.com/qemu/qemu/commit/babf8b87127ae809b31b3c0a117dcbc91aaf9aba
  Author: Eugenio Pérez <eperezma@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

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

  Log Message:
  -----------
  vdpa: map shadow vrings with MAP_SHARED

The vdpa devices that use va addresses neeeds these maps shared.
Otherwise, vhost_vdpa checks will refuse to accept the maps.

The mmap call will always return a page aligned address, so removing the
qemu_memalign call.  Keeping the ROUND_UP for the size as we still need
to DMA-map them in full.

Not applying fixes tag as it never worked with va devices.

Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id: <20230602143854.1879091-4-eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 0a47810b09909a432b705e89e0cb5f9c1109465f
      
https://github.com/qemu/qemu/commit/0a47810b09909a432b705e89e0cb5f9c1109465f
  Author: Hawkins Jiawei <yin31149@gmail.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M include/hw/virtio/virtio.h

  Log Message:
  -----------
  include/hw/virtio: make some VirtIODevice const

The VirtIODevice structure is not modified in
virtio_vdev_has_feature(). Therefore, make it const
to allow this function to accept const variables.

Signed-off-by: Hawkins Jiawei <yin31149@gmail.com>
Reviewed-by: Eugenio Pérez Martin <eperezma@redhat.com>
Message-Id: 
<16c0561b921310a32c240a4fb6e8cee3ffee16fe.1685704856.git.yin31149@gmail.com>
Tested-by: Lei Yang <leiyang@redhat.com>
Reviewed-by: Eugenio Pérez <eperezma@redhat.com>
Tested-by: Eugenio Pérez <eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 02d3bf099ba071f37145cfcc34d088e8f839072f
      
https://github.com/qemu/qemu/commit/02d3bf099ba071f37145cfcc34d088e8f839072f
  Author: Hawkins Jiawei <yin31149@gmail.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vdpa: reuse virtio_vdev_has_feature()

We can use virtio_vdev_has_feature() instead of manually
accessing the features.

Signed-off-by: Hawkins Jiawei <yin31149@gmail.com>
Acked-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id: 
<ff838d30206209fd865511b16ffb34cc0d5e8d8f.1685704856.git.yin31149@gmail.com>
Tested-by: Lei Yang <leiyang@redhat.com>
Reviewed-by: Eugenio Pérez <eperezma@redhat.com>
Tested-by: Eugenio Pérez <eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 705e89cfaafc54491482742a756cf661b48608d2
      
https://github.com/qemu/qemu/commit/705e89cfaafc54491482742a756cf661b48608d2
  Author: Hawkins Jiawei <yin31149@gmail.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/net/virtio-net.c

  Log Message:
  -----------
  hw/net/virtio-net: make some VirtIONet const

The VirtIONet structure is not modified in
virtio_net_supported_guest_offloads().
Therefore, make it const to allow this function to
accept const variables.

Signed-off-by: Hawkins Jiawei <yin31149@gmail.com>
Reviewed-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id: 
<489b09c3998ac09b9135e57a7dd8c56a4be8cdf9.1685704856.git.yin31149@gmail.com>
Tested-by: Lei Yang <leiyang@redhat.com>
Reviewed-by: Eugenio Pérez <eperezma@redhat.com>
Tested-by: Eugenio Pérez <eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 0b545b1e42fc61f64071c7dd6f3ce1650f328007
      
https://github.com/qemu/qemu/commit/0b545b1e42fc61f64071c7dd6f3ce1650f328007
  Author: Hawkins Jiawei <yin31149@gmail.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/net/virtio-net.c
    M include/hw/virtio/virtio-net.h

  Log Message:
  -----------
  virtio-net: expose virtio_net_supported_guest_offloads()

To support restoring offloads state in vdpa, it is necessary to
expose the function virtio_net_supported_guest_offloads().

According to VirtIO standard, "Upon feature negotiation
corresponding offload gets enabled to preserve backward compatibility.".
Therefore, QEMU uses this function to get the device supported offloads.
This allows QEMU to know the device's defaults and skip the control
message sending if these defaults align with the driver's configuration.

Note that the device's defaults can mismatch the driver's configuration
only at live migration.

Signed-off-by: Hawkins Jiawei <yin31149@gmail.com>
Message-Id: 
<43679506f3f039a7aa2bdd5b49785107b5dfd7d4.1685704856.git.yin31149@gmail.com>
Tested-by: Lei Yang <leiyang@redhat.com>
Reviewed-by: Eugenio Pérez <eperezma@redhat.com>
Tested-by: Eugenio Pérez <eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 0b58d3686a07f505d02edc28cfaf272a4768481c
      
https://github.com/qemu/qemu/commit/0b58d3686a07f505d02edc28cfaf272a4768481c
  Author: Hawkins Jiawei <yin31149@gmail.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vdpa: Add vhost_vdpa_net_load_offloads()

This patch introduces vhost_vdpa_net_load_offloads() to
restore offloads state at device's startup.

Signed-off-by: Hawkins Jiawei <yin31149@gmail.com>
Message-Id: 
<7e2b5cad9c48c917df53d80dec27dbfeb513e1a3.1685704856.git.yin31149@gmail.com>
Tested-by: Lei Yang <leiyang@redhat.com>
Reviewed-by: Eugenio Pérez <eperezma@redhat.com>
Tested-by: Eugenio Pérez <eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 4b4a1378b951930628398b3c67ccb036bdf6f012
      
https://github.com/qemu/qemu/commit/4b4a1378b951930628398b3c67ccb036bdf6f012
  Author: Hawkins Jiawei <yin31149@gmail.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vdpa: Allow VIRTIO_NET_F_CTRL_GUEST_OFFLOADS in SVQ

Enable SVQ with VIRTIO_NET_F_CTRL_GUEST_OFFLOADS feature.

Signed-off-by: Hawkins Jiawei <yin31149@gmail.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Message-Id: 
<778d642ecae6deed8a218b0e6232e4d7bb96b439.1685704856.git.yin31149@gmail.com>
Tested-by: Lei Yang <leiyang@redhat.com>
Reviewed-by: Eugenio Pérez <eperezma@redhat.com>
Tested-by: Eugenio Pérez <eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 92099aa4e9a3bb6856c290afaf41c76f9e3dd9fd
      
https://github.com/qemu/qemu/commit/92099aa4e9a3bb6856c290afaf41c76f9e3dd9fd
  Author: Laurent Vivier <lvivier@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/virtio/vhost.c

  Log Message:
  -----------
  vhost: fix vhost_dev_enable_notifiers() error case

in vhost_dev_enable_notifiers(), if virtio_bus_set_host_notifier(true)
fails, we call vhost_dev_disable_notifiers() that executes
virtio_bus_set_host_notifier(false) on all queues, even on queues that
have failed to be initialized.

This triggers a core dump in memory_region_del_eventfd():

 virtio_bus_set_host_notifier: unable to init event notifier: Too many open 
files (-24)
 vhost VQ 1 notifier binding failed: 24
 .../softmmu/memory.c:2611: memory_region_del_eventfd: Assertion `i != 
mr->ioeventfd_nb' failed.

Fix the problem by providing to vhost_dev_disable_notifiers() the
number of queues to disable.

Fixes: 8771589b6f81 ("vhost: simplify vhost_dev_enable_notifiers")
Cc: longpeng2@huawei.com
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Message-Id: <20230602162735.3670785-1-lvivier@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>


  Commit: 51e84244a7799172f4239482199e9b4bdcd23172
      
https://github.com/qemu/qemu/commit/51e84244a7799172f4239482199e9b4bdcd23172
  Author: Eugenio Pérez <eperezma@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vdpa: mask _F_CTRL_GUEST_OFFLOADS for vhost vdpa devices

QEMU does not emulate it so it must be disabled as long as the backend
does not support it.

Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id: <20230602173328.1917385-1-eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Tested-by: Lei Yang <leiyang@redhat.com>


  Commit: d45243bcfc61a3c34f96a4fc34bffcb9929daba0
      
https://github.com/qemu/qemu/commit/d45243bcfc61a3c34f96a4fc34bffcb9929daba0
  Author: Eugenio Pérez <eperezma@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vdpa: fix not using CVQ buffer in case of error

Bug introducing when refactoring.  Otherway, the guest never received
the used buffer.

Fixes: be4278b65fc1 ("vdpa: extract vhost_vdpa_net_cvq_add from 
vhost_vdpa_net_handle_ctrl_avail")
Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id: <20230602173451.1917999-1-eperezma@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Tested-by: Lei Yang <leiyang@redhat.com>


  Commit: abe10037b129615f3da80f6d7c4acc3a0ec48afa
      
https://github.com/qemu/qemu/commit/abe10037b129615f3da80f6d7c4acc3a0ec48afa
  Author: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/i386/pc.c

  Log Message:
  -----------
  hw/i386/pc: Clean up pc_machine_initfn

To use the newly introduced PC machine class local variable.

Suggested-by: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Message-Id: <20230609164107.23404-1-suravee.suthikulpanit@amd.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 535a3d9a32a9e37487984c16af0167bb3c3a2025
      
https://github.com/qemu/qemu/commit/535a3d9a32a9e37487984c16af0167bb3c3a2025
  Author: Stefan Hajnoczi <stefanha@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/scsi/virtio-scsi.c

  Log Message:
  -----------
  virtio-scsi: avoid dangling host notifier in ->ioeventfd_stop()

virtio_scsi_dataplane_stop() calls blk_drain_all(), which invokes
->drained_begin()/->drained_end() after we've already detached the host
notifier. virtio_scsi_drained_end() currently attaches the host notifier
again and leaves it dangling after dataplane has stopped.

This results in the following assertion failure because
virtio_scsi_defer_to_dataplane() is called from the IOThread instead of
the main loop thread:

  qemu-system-x86_64: ../softmmu/memory.c:1111: 
memory_region_transaction_commit: Assertion `qemu_mutex_iothread_locked()' 
failed.

Buglink: https://gitlab.com/qemu-project/qemu/-/issues/1680
Reported-by: Jean-Louis Dupond <jean-louis@dupond.be>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20230611193924.2444914-1-stefanha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: f8ed3648b5b9c0cd77397ae4404f3e9e4be8a426
      
https://github.com/qemu/qemu/commit/f8ed3648b5b9c0cd77397ae4404f3e9e4be8a426
  Author: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M block/export/vhost-user-blk-server.c
    M contrib/vhost-user-blk/vhost-user-blk.c
    M hw/block/vhost-user-blk.c
    M hw/display/vhost-user-gpu.c
    M hw/input/vhost-user-input.c
    M hw/net/virtio-net.c
    M hw/virtio/vdpa-dev.c
    M hw/virtio/vhost-user.c
    M hw/virtio/virtio-qmp.c
    M include/hw/virtio/vhost-backend.h
    M subprojects/libvhost-user/libvhost-user.c
    M subprojects/libvhost-user/libvhost-user.h

  Log Message:
  -----------
  vhost-user: fully use new backend/frontend naming

Slave/master nomenclature was replaced with backend/frontend in commit
1fc19b65279a ("vhost-user: Adopt new backend naming")

This patch replaces all remaining uses of master and slave in the
codebase.

Signed-off-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org>
Message-Id: <20230613080849.2115347-1-manos.pitsidianakis@linaro.org>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>


  Commit: e80c1e4c7d057fe5c96db588e651b934757a912e
      
https://github.com/qemu/qemu/commit/e80c1e4c7d057fe5c96db588e651b934757a912e
  Author: Zhenzhong Duan <zhenzhong.duan@intel.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/i386/intel_iommu.c

  Log Message:
  -----------
  intel_iommu: Fix a potential issue in VFIO dirty page sync

Peter Xu found a potential issue:

"The other thing is when I am looking at the new code I found that we
actually extended the replay() to be used also in dirty tracking of vfio,
in vfio_sync_dirty_bitmap().  For that maybe it's already broken if
unmap_all() because afaiu log_sync() can be called in migration thread
anytime during DMA so I think it means the device is prone to DMA with the
IOMMU pgtable quickly erased and rebuilt here, which means the DMA could
fail unexpectedly.  Copy Alex, Kirti and Neo."

Fix it by replacing the unmap_all() to only evacuate the iova tree
(keeping all host mappings untouched, IOW, don't notify UNMAP), and
do a full resync in page walk which will notify all existing mappings
as MAP. This way we don't interrupt with any existing mapping if there
is (e.g. for the dirty sync case), meanwhile we keep sync too to latest
(for moving a vfio device into an existing iommu group).

Suggested-by: Peter Xu <peterx@redhat.com>
Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Message-Id: <20230615032626.314476-2-zhenzhong.duan@intel.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: ce735ff03349eeac9efe59c118d78f088a151ec4
      
https://github.com/qemu/qemu/commit/ce735ff03349eeac9efe59c118d78f088a151ec4
  Author: Zhenzhong Duan <zhenzhong.duan@intel.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/i386/intel_iommu.c

  Log Message:
  -----------
  intel_iommu: Fix flag check in replay

Replay doesn't notify registered notifiers but the one passed
to it. So it's meaningless to check the registered notifier's
synthetic flag.

There is no issue currently as all replay use cases have MAP
flag set, but let's be robust.

Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Message-Id: <20230615032626.314476-3-zhenzhong.duan@intel.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: ebe1504e10f771f4fc5d005a6d1ed3f30e3ad428
      
https://github.com/qemu/qemu/commit/ebe1504e10f771f4fc5d005a6d1ed3f30e3ad428
  Author: Zhenzhong Duan <zhenzhong.duan@intel.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/i386/intel_iommu.c

  Log Message:
  -----------
  intel_iommu: Fix address space unmap

During address space unmap, corresponding IOVA tree entries are
also removed. But DMAMap is set beyond notifier's scope by 1, so
in theory there is possibility to remove a continuous entry above
the notifier's scope but falling in adjacent notifier's scope.

There is no issue currently as no use cases allocate notifiers
continuously, but let's be robust.

Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Message-Id: <20230615032626.314476-4-zhenzhong.duan@intel.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 0e994668d00c9ca760817a4ae802a7bed0e29596
      
https://github.com/qemu/qemu/commit/0e994668d00c9ca760817a4ae802a7bed0e29596
  Author: Ani Sinha <anisinha@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M hw/net/vhost_net.c

  Log Message:
  -----------
  vhost_net: add an assertion for TAP client backends

An assertion was missing for tap vhost backends that enforces a non-null
reference from get_vhost_net(). Both vhost-net-user and vhost-net-vdpa
enforces this. Enforce the same for tap. Unit tests pass with this change.

Signed-off-by: Ani Sinha <anisinha@redhat.com>
Message-Id: <20230619041501.111655-1-anisinha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Laurent Vivier <lvivier@redhat.com>


  Commit: a0d7215e339b61c7d7a7b3fcf754954d80d93eb8
      
https://github.com/qemu/qemu/commit/a0d7215e339b61c7d7a7b3fcf754954d80d93eb8
  Author: Ani Sinha <anisinha@redhat.com>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M net/vhost-vdpa.c

  Log Message:
  -----------
  vhost-vdpa: do not cleanup the vdpa/vhost-net structures if peer nic is 
present

When a peer nic is still attached to the vdpa backend, it is too early to free
up the vhost-net and vdpa structures. If these structures are freed here, then
QEMU crashes when the guest is being shut down. The following call chain
would result in an assertion failure since the pointer returned from
vhost_vdpa_get_vhost_net() would be NULL:

do_vm_stop() -> vm_state_notify() -> virtio_set_status() ->
virtio_net_vhost_status() -> get_vhost_net().

Therefore, we defer freeing up the structures until at guest shutdown
time when qemu_cleanup() calls net_cleanup() which then calls
qemu_del_net_client() which would eventually call vhost_vdpa_cleanup()
again to free up the structures. This time, the loop in net_cleanup()
ensures that vhost_vdpa_cleanup() will be called one last time when
all the peer nics are detached and freed.

All unit tests pass with this change.

CC: imammedo@redhat.com
CC: jusual@redhat.com
CC: mst@redhat.com
Fixes: CVE-2023-3301
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2128929
Signed-off-by: Ani Sinha <anisinha@redhat.com>
Message-Id: <20230619065209.442185-1-anisinha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>


  Commit: 390e8fc6b0e7b521c9eceb8dfe0958e141009ab9
      
https://github.com/qemu/qemu/commit/390e8fc6b0e7b521c9eceb8dfe0958e141009ab9
  Author: Richard Henderson <richard.henderson@linaro.org>
  Date:   2023-06-26 (Mon, 26 Jun 2023)

  Changed paths:
    M backends/cryptodev-vhost-user.c
    M backends/cryptodev.c
    M block/export/vhost-user-blk-server.c
    M contrib/vhost-user-blk/vhost-user-blk.c
    M docs/devel/loads-stores.rst
    M hw/acpi/core.c
    M hw/block/dataplane/meson.build
    M hw/block/dataplane/virtio-blk.c
    M hw/block/vhost-user-blk.c
    M hw/cxl/cxl-device-utils.c
    A hw/cxl/cxl-events.c
    M hw/cxl/cxl-mailbox-utils.c
    M hw/cxl/meson.build
    M hw/display/vhost-user-gpu.c
    M hw/i386/intel_iommu.c
    M hw/i386/pc.c
    M hw/i386/pc_piix.c
    M hw/i386/pc_q35.c
    M hw/input/vhost-user-input.c
    M hw/mem/cxl_type3.c
    M hw/mem/cxl_type3_stubs.c
    M hw/net/vhost_net.c
    M hw/net/virtio-net.c
    M hw/pci/pci.c
    M hw/s390x/virtio-ccw.c
    M hw/scsi/Kconfig
    M hw/scsi/meson.build
    M hw/scsi/vhost-scsi.c
    M hw/scsi/vhost-user-scsi.c
    M hw/scsi/virtio-scsi-dataplane.c
    M hw/scsi/virtio-scsi.c
    M hw/virtio/Kconfig
    M hw/virtio/meson.build
    M hw/virtio/vdpa-dev.c
    M hw/virtio/vhost-shadow-virtqueue.c
    M hw/virtio/vhost-user.c
    M hw/virtio/vhost-vdpa.c
    M hw/virtio/vhost-vsock-common.c
    M hw/virtio/vhost.c
    M hw/virtio/virtio-crypto.c
    M hw/virtio/virtio-iommu.c
    M hw/virtio/virtio-mem.c
    M hw/virtio/virtio-qmp.c
    M include/exec/target_page.h
    M include/hw/cxl/cxl.h
    M include/hw/cxl/cxl_device.h
    A include/hw/cxl/cxl_events.h
    M include/hw/i386/pc.h
    M include/hw/virtio/vhost-backend.h
    M include/hw/virtio/virtio-net.h
    M include/hw/virtio/virtio.h
    M include/qemu/bswap.h
    M net/vhost-vdpa.c
    M qapi/cxl.json
    M softmmu/physmem.c
    M subprojects/libvhost-user/libvhost-user.c
    M subprojects/libvhost-user/libvhost-user.h
    M tests/data/acpi/q35/SSDT.dimmpxm

  Log Message:
  -----------
  Merge tag 'for_upstream' of https://git.kernel.org/pub/scm/virt/kvm/mst/qemu 
into staging

virtio,pc,pci: fixes, features, cleanups

asymmetric crypto support for cryptodev-vhost-user
rom migration when rom size changes
poison get, inject, clear; mock cxl events and irq support for cxl
shadow virtqueue offload support for vhost-vdpa
vdpa now maps shadow vrings with MAP_SHARED
max_cpus went up to 1024 and we default to smbios 3.0 for pc

Fixes, cleanups all over the place. In particular
    hw/acpi: Fix PM control register access
works around a very long standing bug in memory core.

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

# -----BEGIN PGP SIGNATURE-----
#
# iQFDBAABCAAtFiEEXQn9CHHI+FuUyooNKB8NuNKNVGkFAmSZl5EPHG1zdEByZWRo
# YXQuY29tAAoJECgfDbjSjVRph+8H/RZodqCadmQ1evpeWs7RBSvJeZgbJTVl/9/h
# +ObvEmVz2+X4D+O1Kxh54vDV0SNVq3XjyrFy3Ur57MAR6r2ZWwB6HySaeFdi4zIm
# N0SMkfUylDnf7ulyjzJoXDzHOoFnqAM6fU/jcoQXBIdUeeqwPrzLOZHrGrwevPWK
# iH5JP66suOVlBuKLJjlUKI3/4vK3oTod5Xa3Oz2Cw1oODtbIa97N8ZAdBgZd3ah9
# 7mjZjcH54kFRwfidz/rkpY5NMru8BlD54MyEOWofvTL2w7aoWmVO99qHEK+SjLkG
# x4Mx3aYlnOEvkJ+5yBHvtXS4Gc5T9ltY84AvcwPNuz4RKCORi1s=
# =Do8p
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 26 Jun 2023 03:50:09 PM CEST
# gpg:                using RSA key 5D09FD0871C8F85B94CA8A0D281F0DB8D28D5469
# gpg:                issuer "mst@redhat.com"
# gpg: Good signature from "Michael S. Tsirkin <mst@kernel.org>" [undefined]
# gpg:                 aka "Michael S. Tsirkin <mst@redhat.com>" [undefined]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 0270 606B 6F3C DF3D 0B17  0970 C350 3912 AFBE 8E67
#      Subkey fingerprint: 5D09 FD08 71C8 F85B 94CA  8A0D 281F 0DB8 D28D 5469

* tag 'for_upstream' of https://git.kernel.org/pub/scm/virt/kvm/mst/qemu: (53 
commits)
  vhost-vdpa: do not cleanup the vdpa/vhost-net structures if peer nic is 
present
  vhost_net: add an assertion for TAP client backends
  intel_iommu: Fix address space unmap
  intel_iommu: Fix flag check in replay
  intel_iommu: Fix a potential issue in VFIO dirty page sync
  vhost-user: fully use new backend/frontend naming
  virtio-scsi: avoid dangling host notifier in ->ioeventfd_stop()
  hw/i386/pc: Clean up pc_machine_initfn
  vdpa: fix not using CVQ buffer in case of error
  vdpa: mask _F_CTRL_GUEST_OFFLOADS for vhost vdpa devices
  vhost: fix vhost_dev_enable_notifiers() error case
  vdpa: Allow VIRTIO_NET_F_CTRL_GUEST_OFFLOADS in SVQ
  vdpa: Add vhost_vdpa_net_load_offloads()
  virtio-net: expose virtio_net_supported_guest_offloads()
  hw/net/virtio-net: make some VirtIONet const
  vdpa: reuse virtio_vdev_has_feature()
  include/hw/virtio: make some VirtIODevice const
  vdpa: map shadow vrings with MAP_SHARED
  vdpa: reorder vhost_vdpa_net_cvq_cmd_page_len function
  vdpa: do not block migration if device has cvq and x-svq=on
  ...

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


Compare: https://github.com/qemu/qemu/compare/cd041ddbc05a...390e8fc6b0e7



reply via email to

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