Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: 51ac481bff88723ef4c101925082fab03bba200a
      
https://github.com/qemu/qemu/commit/51ac481bff88723ef4c101925082fab03bba200a
  Author: Jamin Lin <jamin_...@aspeedtech.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/misc/aspeed_sdmc.c

  Log Message:
  -----------
  hw/misc/aspeed_sdmc: Skipping dram_init in u-boot for AST2700

On AST2700 SoC, QEMU now sets BIT6 in VGA0 SCRATCH register to indicate
that DDR training has completed, thus skipping the dram_init().

To align with the recent U-Boot changes, where the Main Control Register's
BIT16 is checked to skip the dram_init() process, this patch sets BIT16 in
the SDMC Main Control Register at reset time.

This allows both the main U-Boot stage to correctly detect and bypass DRAM
initialization when running under QEMU.

Reference:
- QEMU: 
https://github.com/qemu/qemu/commit/2d082fea485ee455a70ed3e963cdf9a70f34858a
- U-Boot: 
https://github.com/AspeedTech-BMC/u-boot/commit/94e5435504fb0d8888f5c1bfd3fa284cdd6aaf9b

Signed-off-by: Jamin Lin <jamin_...@aspeedtech.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250618080006.846355-2-jamin_...@aspeedtech.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: a6ca5dfccc2b584d2f7bf31fb488fc178e967972
      
https://github.com/qemu/qemu/commit/a6ca5dfccc2b584d2f7bf31fb488fc178e967972
  Author: Jamin Lin <jamin_...@aspeedtech.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/misc/aspeed_scu.c

  Log Message:
  -----------
  hw/misc/aspeed_scu: Support the Frequency Counter Control register for AST2700

According to the datasheet:
BIT[1] (SCU_FREQ_OSC_EN) enables the oscillator frequency measurement counter.
BIT[6] (SCU_FREQ_DONE) indicates the measurement is finished.
Firmware polls BIT[6] to determine when measurement is complete.
The flag can be cleared by writing BIT[1] to 0.

To simulate this hardware behavior in QEMU:
If BIT[1] is set to 1, BIT[6] is immediately set to 1 to avoid
firmware hanging during polling.
If BIT[1] is cleared to 0, BIT[6] is also cleared to 0 to match
hardware semantics.

The initial value of this register is initialized to 0x80, reflecting the
default value confirmed from an EVB register dump.

Signed-off-by: Jamin Lin <jamin_...@aspeedtech.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250618080006.846355-3-jamin_...@aspeedtech.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 126c56b067d6a68840542f8dc7afdec9b69caa83
      
https://github.com/qemu/qemu/commit/126c56b067d6a68840542f8dc7afdec9b69caa83
  Author: Patrick Williams <patr...@stwcx.xyz>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/arm/aspeed.c

  Log Message:
  -----------
  hw/arm/aspeed: bletchley: update hw strap values

Update the Bletchley hardware strap register values
per actual hardware:
```
root@bmc:~# devmem 0x1e6e2500
0x00002000
root@bmc:~# devmem 0x1e6e2510
0x00000801
```

Signed-off-by: Patrick Williams <patr...@stwcx.xyz>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250619035850.2682690-1-patr...@stwcx.xyz
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 8e076a3f1b1ed0fc009ee25796e45c44b4cf74f9
      
https://github.com/qemu/qemu/commit/8e076a3f1b1ed0fc009ee25796e45c44b4cf74f9
  Author: Patrick Williams <patr...@stwcx.xyz>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/arm/Kconfig
    M hw/arm/aspeed.c
    M tests/functional/meson.build
    A tests/functional/test_arm_aspeed_catalina.py

  Log Message:
  -----------
  hw/arm/aspeed: add Catalina machine type

Add the 'catalina-bmc' machine type based on the kernel DTS[1] as of
6.16-rc2.  The i2c model is as complete as the current QEMU models
support, but in some cases I substituted devices that are close enough
for present functionality.  Strap registers are were verified with
hardware.

This has been tested with an openbmc image built from [2].

Add a functional test in line with Bletchley, pointing at an image
obtained from the OpenBMC Jenkins server.

[1]: 
https://github.com/torvalds/linux/blob/v6.16-rc2/arch/arm/boot/dts/aspeed/aspeed-bmc-facebook-catalina.dts
[2]: 
https://github.com/openbmc/openbmc/commit/5bc73ec261f981d5e586bda5ac78eb0cbd5f92b0

Signed-off-by: Patrick Williams <patr...@stwcx.xyz>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250619151458.2831859-1-patr...@stwcx.xyz
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 10d1b6231b7fdbeb9c601af35f73c6353cbfe6c8
      
https://github.com/qemu/qemu/commit/10d1b6231b7fdbeb9c601af35f73c6353cbfe6c8
  Author: Tan Siewert <t...@siewert.io>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/misc/aspeed_scu.c

  Log Message:
  -----------
  hw/misc/aspeed_scu: Handle AST2600 protection key registers correctly

The AST2600 SCU has two protection key registers (0x00 and 0x10) that
both need to be unlocked. (Un-)locking 0x00 modifies both protection key
registers, while modifying 0x10 only modifies itself.

This commit updates the SCU write logic to reject writes unless both
protection key registers are unlocked, matching the behaviour of
real hardware.

Signed-off-by: Tan Siewert <t...@siewert.io>
Reviewed-by: Jamin Lin <jamin_...@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20250619085329.42125-1-...@siewert.io
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 116bf243d9137a9101aa1a403b402b78313615bc
      
https://github.com/qemu/qemu/commit/116bf243d9137a9101aa1a403b402b78313615bc
  Author: Tan Siewert <t...@siewert.io>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    A tests/qtest/aspeed_scu-test.c
    M tests/qtest/meson.build

  Log Message:
  -----------
  tests/qtest: Add test for ASPEED SCU

This adds basic tests for the ASPEED System Control Unit (SCU) and its
protection mechanism on the AST2500 and AST2600 platforms.

The tests verify:
  - That SCU protection registers can be unlocked and locked again
  - That modifying the primary protection register on AST2600 also
    affects the secondary one
  - That writes to protected SCU registers are blocked unless
    protection registers are unlocked explicitly

These tests ensure proper emulation of hardware locking behaviour
and help catch regressions in SCU access logic.

Signed-off-by: Tan Siewert <t...@siewert.io>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20250630112646.74944-1-...@siewert.io
[ clg: Reordered file list in meson.build ]
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: e8c1128bf982f2e5f7c9ca6c1de632feec3d9e94
      
https://github.com/qemu/qemu/commit/e8c1128bf982f2e5f7c9ca6c1de632feec3d9e94
  Author: Zhenzhong Duan <zhenzhong.d...@intel.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/cpr-legacy.c

  Log Message:
  -----------
  vfio/container: Fix potential SIGSEGV when recover from unmap-all-vaddr 
failure

CPR overrides then restores dma_map in both outgoing and incoming QEMU, for
different reasons. But it only sets saved_dma_map in the target.

Fix it by always setting saved_dma_map.

Fixes: eba1f657cbb1 ("vfio/container: recover from unmap-all-vaddr failure")
Suggested-by: Steven Sistare <steven.sist...@oracle.com>
Signed-off-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Reviewed-by: Steve Sistare <steven.sist...@oracle.com>
Link: 
https://lore.kernel.org/qemu-devel/20250627063332.5173-2-zhenzhong.d...@intel.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 924c3ccb310e615bd350d4c77b269b19d95bf5e4
      
https://github.com/qemu/qemu/commit/924c3ccb310e615bd350d4c77b269b19d95bf5e4
  Author: Zhenzhong Duan <zhenzhong.d...@intel.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/cpr-legacy.c
    M include/hw/vfio/vfio-cpr.h

  Log Message:
  -----------
  vfio/container: Fix vfio_container_post_load()

When there are multiple VFIO containers, vioc->dma_map is restored
multiple times, this made only first container work and remaining
containers using vioc->dma_map restored by first container.

Fix it by save and restore vioc->dma_map locally. saved_dma_map in
VFIOContainerCPR becomes useless and is removed.

Fixes: 7e9f21411302 ("vfio/container: restore DMA vaddr")
Signed-off-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Reviewed-by: Steve Sistare <steven.sist...@oracle.com>
Link: 
https://lore.kernel.org/qemu-devel/20250627063332.5173-3-zhenzhong.d...@intel.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: f7c5dff26e0128246f5c220b38da51e56a756dbb
      
https://github.com/qemu/qemu/commit/f7c5dff26e0128246f5c220b38da51e56a756dbb
  Author: Mark Cave-Ayland <mark.caveayl...@nutanix.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio-user/container.c

  Log Message:
  -----------
  vfio-user: do not register vfio-user container with cpr

As the full cpr implementation is yet to be merged upstream, do not register
the vfio-user container with cpr. Full vfio-user support for cpr can be
merged later as a follow-up series.

Signed-off-by: Mark Cave-Ayland <mark.caveayl...@nutanix.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Message-ID: <20250702120043.267634-1-mark.caveayl...@nutanix.com>
[ clg: Removed now useless "hw/vfio/vfio-cpr.h" include ]
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 34ea448263a8dad7443bfeaf5eca75e49abc5865
      
https://github.com/qemu/qemu/commit/34ea448263a8dad7443bfeaf5eca75e49abc5865
  Author: Xiaoyao Li <xiaoyao...@intel.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/i386/Kconfig

  Log Message:
  -----------
  i386/tdx: Build TDX only for 64-bit target

Build errors related to TDX were reported when QEMU built on 32-bit
host[1][2].

Since TDX cannot work on 32-bit host and it's also not worth supporting
TDX with 32-bit QEMU, limit TDX to 64-bit target only.

[1] https://lore.kernel.org/qemu-devel/20250602173101.1052983-1-...@redhat.com/
[2] 
https://lore.kernel.org/qemu-devel/b8171c39-6a92-4078-a59a-a63d7452e...@kaod.org/

Suggested-by: Cédric Le Goater <c...@redhat.com>
Signed-off-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Tested-by: Cédric Le Goater <c...@redhat.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250625073310.2796298-1-xiaoyao...@intel.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 4ba5cdfdf70843d7a74a7cb9704688c4c6957dd6
      
https://github.com/qemu/qemu/commit/4ba5cdfdf70843d7a74a7cb9704688c4c6957dd6
  Author: Cédric Le Goater <c...@redhat.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M .b4-config

  Log Message:
  -----------
  b4: Drop linktrailermask

When grabbing a patch series, the link trailer is replaced with a
Message-ID, which is not useful compared to an URL. Fix that by
dropping the linktrailermask config.

Cc: Philippe Mathieu-Daudé <phi...@linaro.org>
Cc: Jiaxun Yang <jiaxun.y...@flygoat.com>
Fixes: 838cf72b5d2c ("Add a b4 configuration file")
Link: https://lore.kernel.org/qemu-devel/20250630172301.519848-1-...@redhat.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 3f2a36d0ef6339ce78e107959da81f76283582f7
      
https://github.com/qemu/qemu/commit/3f2a36d0ef6339ce78e107959da81f76283582f7
  Author: Cédric Le Goater <c...@redhat.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M Makefile

  Log Message:
  -----------
  Makefile: prune quilt source files for cscope

Both quilt, to apply patches, and cscope, to navigate in the code, are
useful tools. Make sure source files that quilt saves when applying
patches are not taken into account when building the cscope database.

Link: https://lore.kernel.org/qemu-devel/20250630172048.519182-1-...@redhat.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 30edcb4d4e7a265c2912ca6978b150c7c75b654f
      
https://github.com/qemu/qemu/commit/30edcb4d4e7a265c2912ca6978b150c7c75b654f
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/cpr.c
    M hw/vfio/pci.c
    M hw/vfio/pci.h
    M include/hw/vfio/vfio-cpr.h

  Log Message:
  -----------
  vfio-pci: preserve MSI

Save the MSI message area as part of vfio-pci vmstate, and preserve the
interrupt and notifier eventfd's.  migrate_incoming loads the MSI data,
then the vfio-pci post_load handler finds the eventfds in CPR state,
rebuilds vector data structures, and attaches the interrupts to the new
KVM instance.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-2-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 87aeaead5c75448d6e36bf6f9114862c8d523871
      
https://github.com/qemu/qemu/commit/87aeaead5c75448d6e36bf6f9114862c8d523871
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/cpr.c
    M hw/vfio/pci.c

  Log Message:
  -----------
  vfio-pci: preserve INTx

Preserve vfio INTx state across cpr-transfer.  Preserve VFIOINTx fields as
follows:
  pin : Recover this from the vfio config in kernel space
  interrupt : Preserve its eventfd descriptor across exec.
  unmask : Ditto
  route.irq : This could perhaps be recovered in vfio_pci_post_load by
    calling pci_device_route_intx_to_irq(pin), whose implementation reads
    config space for a bridge device such as ich9.  However, there is no
    guarantee that the bridge vmstate is read before vfio vmstate.  Rather
    than fiddling with MigrationPriority for vmstate handlers, explicitly
    save route.irq in vfio vmstate.
  pending : save in vfio vmstate.
  mmap_timeout, mmap_timer : Re-initialize
  bool kvm_accel : Re-initialize

In vfio_realize, defer calling vfio_intx_enable until the vmstate
is available, in vfio_pci_post_load.  Modify vfio_intx_enable and
vfio_intx_kvm_enable to skip vfio initialization, but still perform
kvm initialization.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-3-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 7ed0919119b0e7a6b7db1dcaca3a2cb30c771dd1
      
https://github.com/qemu/qemu/commit/7ed0919119b0e7a6b7db1dcaca3a2cb30c771dd1
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M accel/kvm/kvm-all.c
    M hw/vfio/cpr-legacy.c
    M hw/vfio/cpr.c
    M hw/vfio/helpers.c
    M include/hw/vfio/vfio-cpr.h
    M include/hw/vfio/vfio-device.h
    M include/system/kvm.h

  Log Message:
  -----------
  migration: close kvm after cpr

cpr-transfer breaks vfio network connectivity to and from the guest, and
the host system log shows:
  irq bypass consumer (token 00000000a03c32e5) registration fails: -16
which is EBUSY.  This occurs because KVM descriptors are still open in
the old QEMU process.  Close them.

Cc: Paolo Bonzini <pbonz...@redhat.com>
Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Fabiano Rosas <faro...@suse.de>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-4-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: ccfc6715cf54caafba4c2516af394b4ed979c615
      
https://github.com/qemu/qemu/commit/ccfc6715cf54caafba4c2516af394b4ed979c615
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M include/migration/cpr.h
    M migration/cpr.c

  Log Message:
  -----------
  migration: cpr_get_fd_param helper

Add the helper function cpr_get_fd_param, to use when preserving
a file descriptor that is opened externally and passed to QEMU.
cpr_get_fd_param returns a descriptor number either from a QEMU
command-line parameter, from a getfd command, or from CPR state.

When a descriptor is passed to new QEMU via SCM_RIGHTS, its number
changes.  Hence, during CPR, the command-line parameter is ignored
in new QEMU, and over-ridden by the value found in CPR state.

Similarly, if the descriptor was originally specified by a getfd
command in old QEMU, the fd number is not known outside of QEMU,
and it changes when sent to new QEMU via SCM_RIGHTS.  Hence the
user cannot send getfd to new QEMU, but when the user sends a
hotplug command that references the fd, cpr_get_fd_param finds
its value in CPR state.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Fabiano Rosas <faro...@suse.de>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-5-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: e563dc88c21915e111ecef0756cc291e9e473c35
      
https://github.com/qemu/qemu/commit/e563dc88c21915e111ecef0756cc291e9e473c35
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M backends/iommufd.c
    M backends/trace-events
    M include/system/iommufd.h

  Log Message:
  -----------
  backends/iommufd: iommufd_backend_map_file_dma

Define iommufd_backend_map_file_dma to implement IOMMU_IOAS_MAP_FILE.
This will be called as a substitute for iommufd_backend_map_dma, so
the error conditions for BARs are copied as-is from that function.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-6-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: ab48cedc648a60a3e51db73acf12148d90f19c4c
      
https://github.com/qemu/qemu/commit/ab48cedc648a60a3e51db73acf12148d90f19c4c
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M backends/iommufd.c
    M backends/trace-events
    M include/system/iommufd.h

  Log Message:
  -----------
  backends/iommufd: change process ioctl

Define the change process ioctl

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-7-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: d7ae4a740c8e49962ccfbbf41da0b3b8314518ce
      
https://github.com/qemu/qemu/commit/d7ae4a740c8e49962ccfbbf41da0b3b8314518ce
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M include/exec/cpu-common.h
    M system/physmem.c

  Log Message:
  -----------
  physmem: qemu_ram_get_fd_offset

Define qemu_ram_get_fd_offset, so CPR can map a memory region using
IOMMU_IOAS_MAP_FILE in a subsequent patch.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Peter Xu <pet...@redhat.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-8-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: fb32965b6dd8a001815593642a5146fbd2e85651
      
https://github.com/qemu/qemu/commit/fb32965b6dd8a001815593642a5146fbd2e85651
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/container-base.c
    M hw/vfio/iommufd.c
    M include/hw/vfio/vfio-container-base.h

  Log Message:
  -----------
  vfio/iommufd: use IOMMU_IOAS_MAP_FILE

Use IOMMU_IOAS_MAP_FILE when the mapped region is backed by a file.
Such a mapping can be preserved without modification during CPR,
because it depends on the file's address space, which does not change,
rather than on the process's address space, which does change.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-9-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: b9b389b9e0f08b207786d501b790dab9cb2c09de
      
https://github.com/qemu/qemu/commit/b9b389b9e0f08b207786d501b790dab9cb2c09de
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/device.c

  Log Message:
  -----------
  vfio/iommufd: invariant device name

cpr-transfer will use the device name as a key to find the value
of the device descriptor in new QEMU.  However, if the descriptor
number is specified by a command-line fd parameter, then
vfio_device_get_name creates a name that includes the fd number.
This causes a chicken-and-egg problem: new QEMU must know the fd
number to construct a name to find the fd number.

To fix, create an invariant name based on the id command-line parameter,
if id is defined.  The user will need to provide such an id to use CPR.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-10-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 184053f04f6ad6b2950d4712063ffed43bb2720f
      
https://github.com/qemu/qemu/commit/184053f04f6ad6b2950d4712063ffed43bb2720f
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/ap.c
    M hw/vfio/ccw.c
    M hw/vfio/device.c
    M hw/vfio/pci.c
    M hw/vfio/platform.c
    M include/hw/vfio/vfio-device.h

  Log Message:
  -----------
  vfio/iommufd: add vfio_device_free_name

Define vfio_device_free_name to free the name created by
vfio_device_get_name.  A subsequent patch will do more there.
No functional change.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-11-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: a434fd8f6462c1541927d22e07c58425d6cbd84b
      
https://github.com/qemu/qemu/commit/a434fd8f6462c1541927d22e07c58425d6cbd84b
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/device.c
    M include/hw/vfio/vfio-cpr.h

  Log Message:
  -----------
  vfio/iommufd: device name blocker

If an invariant device name cannot be created, block CPR.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-12-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 06c6a65852af0b7648cdb6ff6cf2e66929a7b5f5
      
https://github.com/qemu/qemu/commit/06c6a65852af0b7648cdb6ff6cf2e66929a7b5f5
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M backends/iommufd.c
    A hw/vfio/cpr-iommufd.c
    M hw/vfio/iommufd.c
    M hw/vfio/meson.build
    M include/hw/vfio/vfio-cpr.h
    M include/system/iommufd.h

  Log Message:
  -----------
  vfio/iommufd: register container for cpr

Register a vfio iommufd container and device for CPR, replacing the generic
CPR register call with a more specific iommufd register call.  Add a
blocker if the kernel does not support IOMMU_IOAS_CHANGE_PROCESS.

This is mostly boiler plate.  The fields to to saved and restored are added
in subsequent patches.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-13-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: a6f2f9c42f3a5418fc7000b1fd331b086b6133d9
      
https://github.com/qemu/qemu/commit/a6f2f9c42f3a5418fc7000b1fd331b086b6133d9
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/cpr-iommufd.c
    A hw/vfio/iommufd-stubs.c
    M hw/vfio/meson.build
    M include/hw/vfio/vfio-cpr.h
    M include/migration/cpr.h
    M migration/cpr.c

  Log Message:
  -----------
  migration: vfio cpr state hook

Define a list of vfio devices in CPR state, in a subsection so that
older QEMU can be live updated to this version.  However, new QEMU
will not be live updateable to old QEMU.  This is acceptable because
CPR is not yet commonly used, and updates to older versions are unusual.

The contents of each device object will be defined by the vfio subsystem
in a subsequent patch.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-14-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: f2f3e4667e4d6026f39ab17f355f79b2f8431e19
      
https://github.com/qemu/qemu/commit/f2f3e4667e4d6026f39ab17f355f79b2f8431e19
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/cpr-iommufd.c
    M hw/vfio/iommufd.c
    M hw/vfio/trace-events
    M include/hw/vfio/vfio-cpr.h

  Log Message:
  -----------
  vfio/iommufd: cpr state

VFIO iommufd devices will need access to ioas_id, devid, and hwpt_id in
new QEMU at realize time, so add them to CPR state.  Define CprVFIODevice
as the object which holds the state and is serialized to the vmstate file.
Define accessors to copy state between VFIODevice and CprVFIODevice.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-15-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 2a3f0a59bd6479f75fa5335f82b85b4f9cd7ed4e
      
https://github.com/qemu/qemu/commit/2a3f0a59bd6479f75fa5335f82b85b4f9cd7ed4e
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M backends/iommufd.c
    M hw/vfio/cpr-iommufd.c
    M hw/vfio/device.c

  Log Message:
  -----------
  vfio/iommufd: preserve descriptors

Save the iommu and vfio device fd in CPR state when it is created.
After CPR, the fd number is found in CPR state and reused.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-16-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 4296ee07455e48c169eb110fbca6ef724c119381
      
https://github.com/qemu/qemu/commit/4296ee07455e48c169eb110fbca6ef724c119381
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/iommufd.c

  Log Message:
  -----------
  vfio/iommufd: reconstruct device

Reconstruct userland device state after CPR.  During vfio_realize, skip all
ioctls that configure the device, as it was already configured in old QEMU.

Skip bind, and use the devid from CPR state.

Skip allocation of, and attachment to, ioas_id.  Recover ioas_id from CPR
state, and use it to find a matching container, if any, before creating a
new one.

This reconstruction is not complete.  hwpt_id is handled in a subsequent
patch.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-17-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 010643eeb1521c0240c83ee8678544de0cd30b78
      
https://github.com/qemu/qemu/commit/010643eeb1521c0240c83ee8678544de0cd30b78
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/iommufd.c

  Log Message:
  -----------
  vfio/iommufd: reconstruct hwpt

Skip allocation of, and attachment to, hwpt_id.  Recover it from CPR state.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-18-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 5c066c4be2328c46f03e9166ea720b13bf68ea5d
      
https://github.com/qemu/qemu/commit/5c066c4be2328c46f03e9166ea720b13bf68ea5d
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/cpr-iommufd.c

  Log Message:
  -----------
  vfio/iommufd: change process

Finish CPR by change the owning process of the iommufd device in
post load.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-19-git-send-email-steven.sist...@oracle.com
[ clg: Fixed missing "qemu/error-report.h" include ]
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 6ff4cccd13155e718e630fe16a72d3cc9decde3b
      
https://github.com/qemu/qemu/commit/6ff4cccd13155e718e630fe16a72d3cc9decde3b
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M backends/iommufd.c

  Log Message:
  -----------
  iommufd: preserve DMA mappings

During cpr-transfer load in new QEMU, the vfio_memory_listener causes
spurious calls to map and unmap DMA regions, as devices are created and
the address space is built.  This memory was already already mapped by the
device in old QEMU, so suppress the map and unmap callbacks during incoming
CPR.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-20-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 99cedd5d552130b9b27743c40ca9012e1f4f0371
      
https://github.com/qemu/qemu/commit/99cedd5d552130b9b27743c40ca9012e1f4f0371
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/vfio/cpr.c
    M include/hw/vfio/vfio-cpr.h

  Log Message:
  -----------
  vfio/container: delete old cpr register

vfio_cpr_[un]register_container is no longer used since they were
subsumed by container type-specific registration.  Delete them.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Zhenzhong Duan <zhenzhong.d...@intel.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-21-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 7437caad2052d920452ff7b9b7bc84f5e8e55c90
      
https://github.com/qemu/qemu/commit/7437caad2052d920452ff7b9b7bc84f5e8e55c90
  Author: Steve Sistare <steven.sist...@oracle.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M docs/devel/migration/CPR.rst
    M qapi/migration.json

  Log Message:
  -----------
  vfio: doc changes for cpr

Update documentation to say that cpr-transfer supports vfio and iommufd.

Signed-off-by: Steve Sistare <steven.sist...@oracle.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Reviewed-by: Fabiano Rosas <faro...@suse.de>
Link: 
https://lore.kernel.org/qemu-devel/1751493538-202042-22-git-send-email-steven.sist...@oracle.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 6888a4a9c8601005a2329fee6487c3c0df1348c0
      
https://github.com/qemu/qemu/commit/6888a4a9c8601005a2329fee6487c3c0df1348c0
  Author: Jamin Lin <jamin_...@aspeedtech.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M docs/about/deprecated.rst

  Log Message:
  -----------
  aspeed: Deprecate the ast2700a0-evb machine

The ast2700a0-evb machine represents the first revision of the AST2700 and
serves as the initial engineering sample rather than a production version.
A newer revision, A1, is now supported, and the ast2700a1-evb should replace
the older A0 version.

Signed-off-by: Jamin Lin <jamin_...@aspeedtech.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250703052400.2927831-1-jamin_...@aspeedtech.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 92096685a00414a813aa4735db1706e4e5c6917d
      
https://github.com/qemu/qemu/commit/92096685a00414a813aa4735db1706e4e5c6917d
  Author: Ed Tanous <etan...@nvidia.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/arm/aspeed.c
    M include/hw/arm/aspeed.h

  Log Message:
  -----------
  hw/arm/aspeed: Add second SPI chip to Aspeed model

Aspeed2600 has two spi lanes;  Add a new struct that can mount the
second SPI.

Signed-off-by: Ed Tanous <etan...@nvidia.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250703144249.3348879-2-etan...@nvidia.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: ad8e0e8a0088b8e30582c65b739a7ee8bb0d71ee
      
https://github.com/qemu/qemu/commit/ad8e0e8a0088b8e30582c65b739a7ee8bb0d71ee
  Author: Ed Tanous <etan...@nvidia.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M docs/system/arm/aspeed.rst

  Log Message:
  -----------
  docs: add support for gb200-bmc

This patch updates the docs for support of gb200-bmc.

Signed-off-by: Ed Tanous <etan...@nvidia.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250703144249.3348879-3-etan...@nvidia.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: becfaa10a2b554ac619fdd9ae0aa9cacdba73d67
      
https://github.com/qemu/qemu/commit/becfaa10a2b554ac619fdd9ae0aa9cacdba73d67
  Author: Ed Tanous <etan...@nvidia.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M hw/arm/aspeed.c
    M hw/arm/aspeed_eeprom.c
    M hw/arm/aspeed_eeprom.h

  Log Message:
  -----------
  hw/arm/aspeed: Add GB200 BMC target

GB200nvl72 is a system for for accelerated compute.  This is a model for
the BMC target within the system.

This is based on the device tree aspeed-bmc-nvidia-gb200nvl-bmc.dts
from:

[1] 
https://github.com/openbmc/linux/blob/dev-6.6/arch/arm/boot/dts/aspeed/aspeed-bmc-nvidia-gb200nvl-bmc.dts

Signed-off-by: Ed Tanous <etan...@nvidia.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250703144249.3348879-4-etan...@nvidia.com
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: 3a34dad2c0d25cebafed40696bbbdeb7ff4b9c7d
      
https://github.com/qemu/qemu/commit/3a34dad2c0d25cebafed40696bbbdeb7ff4b9c7d
  Author: Ed Tanous <etan...@nvidia.com>
  Date:   2025-07-03 (Thu, 03 Jul 2025)

  Changed paths:
    M tests/functional/aspeed.py
    M tests/functional/meson.build
    A tests/functional/test_arm_aspeed_gb200nvl_bmc.py

  Log Message:
  -----------
  tests/functional: Add gb200 tests

To support the newly added gb200 machine, add appropriate tests and
extend do_test_arm_aspeed_openbmc() to support the hostname of this
new system: "gb200nvl-obmc".

Signed-off-by: Ed Tanous <etan...@nvidia.com>
Reviewed-by: Cédric Le Goater <c...@redhat.com>
Link: 
https://lore.kernel.org/qemu-devel/20250703144249.3348879-5-etan...@nvidia.com
[ clg: Adjust commit log to document do_test_arm_aspeed_openbmc() change ]
Signed-off-by: Cédric Le Goater <c...@redhat.com>


  Commit: d30245d3f54187d5ef4fbc9013386b98b22da2b5
      
https://github.com/qemu/qemu/commit/d30245d3f54187d5ef4fbc9013386b98b22da2b5
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/tcg/tcg-accel-ops.c
    M system/cpus.c

  Log Message:
  -----------
  system/cpus: Assert interrupt handling is done with BQL locked

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-5-phi...@linaro.org>


  Commit: f3fc87a14b601e7af727f556cf5a50df44d69839
      
https://github.com/qemu/qemu/commit/f3fc87a14b601e7af727f556cf5a50df44d69839
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/stubs/kvm-stub.c

  Log Message:
  -----------
  accel/kvm: Remove kvm_init_cpu_signals() stub

Since commit 57038a92bb0 ("cpus: extract out kvm-specific code
to accel/kvm") the kvm_init_cpu_signals() stub is not necessary.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Message-Id: <20250703173248.44995-6-phi...@linaro.org>


  Commit: 06810394fdc013037811e317501902ed6ab9c276
      
https://github.com/qemu/qemu/commit/06810394fdc013037811e317501902ed6ab9c276
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/kvm/kvm-all.c
    M include/system/kvm.h

  Log Message:
  -----------
  accel/kvm: Reduce kvm_create_vcpu() declaration scope

kvm_create_vcpu() is only used within the same file unit.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-7-phi...@linaro.org>


  Commit: a8e49597d486123a62375eda6dbc939fffbfd31d
      
https://github.com/qemu/qemu/commit/a8e49597d486123a62375eda6dbc939fffbfd31d
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/tcg/monitor.c
    M hmp-commands-info.hx
    M qapi/machine.json
    M tests/qtest/qmp-cmd-test.c

  Log Message:
  -----------
  accel/tcg: Remove 'info opcount' and @x-query-opcount

Since commit 1b65b4f54c7 ("accel/tcg: remove CONFIG_PROFILER",
released with QEMU v8.1.0) we get pointless output:

  (qemu) info opcount
  [TCG profiler not compiled]

Remove that unstable and unuseful command.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Acked-by: Dr. David Alan Gilbert <d...@treblig.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Markus Armbruster <arm...@redhat.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-8-phi...@linaro.org>


  Commit: f1e59f012de35310314a2a12ea9cb5f72019c976
      
https://github.com/qemu/qemu/commit/f1e59f012de35310314a2a12ea9cb5f72019c976
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/tcg/monitor.c

  Log Message:
  -----------
  accel/tcg: Remove profiler leftover

TCG profiler was removed in commit 1b65b4f54c7.

Fixes: 1b65b4f54c7 ("accel/tcg: remove CONFIG_PROFILER")
Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-9-phi...@linaro.org>


  Commit: 04fbbeb7655372f500a7e1d610202a08a50cc364
      
https://github.com/qemu/qemu/commit/04fbbeb7655372f500a7e1d610202a08a50cc364
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/tcg/monitor.c

  Log Message:
  -----------
  accel/tcg: Factor tcg_dump_flush_info() out

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-10-phi...@linaro.org>


  Commit: a472390e800825f8544b7aa7a3503b6a4ae4bec2
      
https://github.com/qemu/qemu/commit/a472390e800825f8544b7aa7a3503b6a4ae4bec2
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/tcg/internal-common.h
    M accel/tcg/monitor.c

  Log Message:
  -----------
  accel/tcg: Factor tcg_dump_stats() out for re-use

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-11-phi...@linaro.org>


  Commit: 0175310c385628de25a09905cb4bb35c2cd47d5f
      
https://github.com/qemu/qemu/commit/0175310c385628de25a09905cb4bb35c2cd47d5f
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M include/system/hvf.h
    M include/system/hvf_int.h

  Log Message:
  -----------
  accel/hvf: Restrict internal declarations

Common code only needs to know whether HVF is enabled and
the QOM type. Move the rest to "hvf_int.h", removing the
need for COMPILING_PER_TARGET #ifdef'ry.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-15-phi...@linaro.org>


  Commit: c4b231cbd3198a05bcaaef5c0a6ee3ecebd12e21
      
https://github.com/qemu/qemu/commit/c4b231cbd3198a05bcaaef5c0a6ee3ecebd12e21
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/hvf/hvf-accel-ops.c
    M accel/hvf/hvf-all.c

  Log Message:
  -----------
  accel/hvf: Move per-cpu method declarations to hvf-accel-ops.c

hvf-all.c aims to contain the generic accel methods (TYPE_ACCEL),
while hvf-accel-ops.c the per-vcpu methods (TYPE_ACCEL_OPS).

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-16-phi...@linaro.org>


  Commit: 5da232017a46a14f86cdbe70396b8051aacfed99
      
https://github.com/qemu/qemu/commit/5da232017a46a14f86cdbe70396b8051aacfed99
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/hvf/hvf-accel-ops.c
    M accel/hvf/hvf-all.c

  Log Message:
  -----------
  accel/hvf: Move generic method declarations to hvf-all.c

hvf-all.c aims to contain the generic accel methods (TYPE_ACCEL),
while hvf-accel-ops.c the per-vcpu methods (TYPE_ACCEL_OPS).

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-17-phi...@linaro.org>


  Commit: 332ad068a025056e2ffd0dc7605897254eb20e15
      
https://github.com/qemu/qemu/commit/332ad068a025056e2ffd0dc7605897254eb20e15
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M include/hw/core/cpu.h

  Log Message:
  -----------
  cpus: Document CPUState::vcpu_dirty field

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Message-Id: <20250703173248.44995-18-phi...@linaro.org>


  Commit: 93bbbcb8d6eb9325530da8c3c313220d45f27252
      
https://github.com/qemu/qemu/commit/93bbbcb8d6eb9325530da8c3c313220d45f27252
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/hvf/hvf-accel-ops.c
    M include/system/hvf_int.h
    M target/arm/hvf/hvf.c
    M target/i386/hvf/hvf.c
    M target/i386/hvf/x86hvf.c

  Log Message:
  -----------
  accel/hvf: Replace @dirty field by generic CPUState::vcpu_dirty field

No need for accel-specific @dirty field when we have
a generic one in CPUState.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-19-phi...@linaro.org>


  Commit: 2098164a6bebe97b736cb1d657c2d750daf8eb76
      
https://github.com/qemu/qemu/commit/2098164a6bebe97b736cb1d657c2d750daf8eb76
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/i386/nvmm/nvmm-all.c

  Log Message:
  -----------
  accel/nvmm: Replace @dirty field by generic CPUState::vcpu_dirty field

No need for accel-specific @dirty field when we have
a generic one in CPUState.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-20-phi...@linaro.org>


  Commit: 29741712054aa8bd333d54dd88121ea3609ab386
      
https://github.com/qemu/qemu/commit/29741712054aa8bd333d54dd88121ea3609ab386
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/i386/whpx/whpx-all.c

  Log Message:
  -----------
  accel/whpx: Replace @dirty field by generic CPUState::vcpu_dirty field

No need for accel-specific @dirty field when we have
a generic one in CPUState.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-21-phi...@linaro.org>


  Commit: 476e7379652d357f1053d340968e7f8d5c5b5281
      
https://github.com/qemu/qemu/commit/476e7379652d357f1053d340968e7f8d5c5b5281
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/stubs/kvm-stub.c

  Log Message:
  -----------
  accel/kvm: Remove kvm_cpu_synchronize_state() stub

Since commit 57038a92bb0 ("cpus: extract out kvm-specific code
to accel/kvm") the kvm_cpu_synchronize_state() stub is not
necessary.

Fixes: e0715f6abce ("kvm: remove kvm specific functions from global includes")
Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-22-phi...@linaro.org>


  Commit: 1f8b0b64736e978120753e63c51921573962a54c
      
https://github.com/qemu/qemu/commit/1f8b0b64736e978120753e63c51921573962a54c
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M include/system/accel-ops.h
    M include/system/hw_accel.h

  Log Message:
  -----------
  accel/system: Document cpu_synchronize_state()

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-23-phi...@linaro.org>


  Commit: 60c9cec12c99e47fb2c82ad5dca36c9441b623dc
      
https://github.com/qemu/qemu/commit/60c9cec12c99e47fb2c82ad5dca36c9441b623dc
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M include/system/accel-ops.h
    M include/system/hw_accel.h

  Log Message:
  -----------
  accel/system: Document cpu_synchronize_state_post_init/reset()

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-24-phi...@linaro.org>


  Commit: b6637bd5561d1d03f3a3d4335102cbf57fad5ad0
      
https://github.com/qemu/qemu/commit/b6637bd5561d1d03f3a3d4335102cbf57fad5ad0
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M MAINTAINERS
    M accel/stubs/meson.build
    A accel/stubs/nvmm-stub.c
    M include/system/nvmm.h
    M target/i386/nvmm/nvmm-all.c

  Log Message:
  -----------
  accel/nvmm: Expose nvmm_enabled() to common code

Currently nvmm_enabled() is restricted to target-specific code.
By defining CONFIG_NVMM_IS_POSSIBLE we allow its use anywhere.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Message-Id: <20250703173248.44995-25-phi...@linaro.org>


  Commit: d5a407a5763c4f5182124bb08c9157c0c667662f
      
https://github.com/qemu/qemu/commit/d5a407a5763c4f5182124bb08c9157c0c667662f
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M MAINTAINERS
    M accel/stubs/meson.build
    A accel/stubs/whpx-stub.c
    M include/system/whpx.h
    M target/i386/whpx/whpx-all.c

  Log Message:
  -----------
  accel/whpx: Expose whpx_enabled() to common code

Currently whpx_enabled() is restricted to target-specific code.
By defining CONFIG_WHPX_IS_POSSIBLE we allow its use anywhere.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Message-Id: <20250703173248.44995-26-phi...@linaro.org>


  Commit: e8388158e62184cb567b7b97ab9e6738dec45348
      
https://github.com/qemu/qemu/commit/e8388158e62184cb567b7b97ab9e6738dec45348
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M MAINTAINERS
    M accel/dummy-cpus.c
    A accel/dummy-cpus.h
    M accel/qtest/qtest.c
    M accel/xen/xen-all.c
    M include/system/cpus.h

  Log Message:
  -----------
  accel/dummy: Extract 'dummy-cpus.h' header from 'system/cpus.h'

'dummy' helpers are specific to accelerator implementations,
no need to expose them via "system/cpus.h".

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Message-Id: <20250703173248.44995-27-phi...@linaro.org>


  Commit: b9b8ce038497a18f4525e9b229f9090b1cec3b05
      
https://github.com/qemu/qemu/commit/b9b8ce038497a18f4525e9b229f9090b1cec3b05
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/hvf/hvf-accel-ops.c
    M accel/kvm/kvm-accel-ops.c
    M accel/qtest/qtest.c
    M accel/xen/xen-all.c
    M include/system/accel-ops.h
    M system/cpus.c
    M target/i386/nvmm/nvmm-accel-ops.c
    M target/i386/whpx/whpx-accel-ops.c

  Log Message:
  -----------
  accel: Expose and register generic_handle_interrupt()

In order to dispatch over AccelOpsClass::handle_interrupt(),
we need it always defined, not calling a hidden handler under
the hood. Make AccelOpsClass::handle_interrupt() mandatory.
Expose generic_handle_interrupt() prototype and register it
for each accelerator.

Suggested-by: Richard Henderson <richard.hender...@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouv...@linaro.org>
Reviewed-by: Zhao Liu <zhao1....@intel.com>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Xiaoyao Li <xiaoyao...@intel.com>
Message-Id: <20250703173248.44995-29-phi...@linaro.org>


  Commit: 38623a9f63395cecdd4138a305e1187e10964990
      
https://github.com/qemu/qemu/commit/38623a9f63395cecdd4138a305e1187e10964990
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/accel-system.c
    M accel/tcg/tcg-accel-ops.c
    M include/qemu/accel.h
    M include/system/accel-ops.h

  Log Message:
  -----------
  accel: Keep reference to AccelOpsClass in AccelClass

Allow dereferencing AccelOpsClass outside of accel/accel-system.c.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Alex Bennée <alex.ben...@linaro.org>
Message-Id: <20250703173248.44995-30-phi...@linaro.org>


  Commit: 51e189619992a08d529bf580f6bcf074f5a7af0d
      
https://github.com/qemu/qemu/commit/51e189619992a08d529bf580f6bcf074f5a7af0d
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/accel-system.c
    M accel/hvf/hvf-all.c
    M accel/kvm/kvm-all.c
    M accel/qtest/qtest.c
    M accel/tcg/tcg-all.c
    M accel/xen/xen-all.c
    M bsd-user/main.c
    M include/qemu/accel.h
    M linux-user/main.c
    M target/i386/nvmm/nvmm-all.c
    M target/i386/whpx/whpx-all.c

  Log Message:
  -----------
  accel: Propagate AccelState to AccelClass::init_machine()

In order to avoid init_machine() to call current_accel(),
pass AccelState along.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Reviewed-by: Alex Bennée <alex.ben...@linaro.org>
Message-Id: <20250703173248.44995-31-phi...@linaro.org>


  Commit: 0fdcfc3baf9af2f2e1903eebf23edc9dd8b0aec2
      
https://github.com/qemu/qemu/commit/0fdcfc3baf9af2f2e1903eebf23edc9dd8b0aec2
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/tcg/tcg-all.c

  Log Message:
  -----------
  accel/tcg: Prefer local AccelState over global current_accel()

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Message-Id: <20250703173248.44995-33-phi...@linaro.org>


  Commit: f0db25adcfa930a97b5192a6f59fd08c369c32e6
      
https://github.com/qemu/qemu/commit/f0db25adcfa930a97b5192a6f59fd08c369c32e6
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/kvm/kvm-all.c

  Log Message:
  -----------
  accel/kvm: Prefer local AccelState over global MachineState::accel

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Message-Id: <20250703173248.44995-32-phi...@linaro.org>


  Commit: 583d1c8f1652777e7d60f09eb58c1f6378d897f1
      
https://github.com/qemu/qemu/commit/583d1c8f1652777e7d60f09eb58c1f6378d897f1
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/kvm/kvm-all.c

  Log Message:
  -----------
  accel/kvm: Directly pass KVMState argument to do_kvm_create_vm()

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Message-Id: <20250703173248.44995-35-phi...@linaro.org>


  Commit: 8dd5e6befc86161598eace2bfeb090c2cfb179fd
      
https://github.com/qemu/qemu/commit/8dd5e6befc86161598eace2bfeb090c2cfb179fd
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/kvm/kvm-all.c
    M include/qemu/accel.h
    M system/memory.c

  Log Message:
  -----------
  accel: Directly pass AccelState argument to AccelClass::has_memory()

Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Message-Id: <20250703173248.44995-34-phi...@linaro.org>


  Commit: 1e9fb43d30c0526e164bebaab387b615edfa79ad
      
https://github.com/qemu/qemu/commit/1e9fb43d30c0526e164bebaab387b615edfa79ad
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/accel-system.c
    M accel/xen/xen-all.c
    M include/qemu/accel.h

  Log Message:
  -----------
  accel: Remove unused MachineState argument of AccelClass::setup_post()

This method only accesses xen_domid/xen_domid_restrict, which are both
related to the 'accelerator', not the machine. Besides, xen_domid aims
to be in Xen AccelState and xen_domid_restrict a xen_domid_restrict
QOM property.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Message-Id: <20250703173248.44995-36-phi...@linaro.org>


  Commit: 842e7eecd4446957c5edf0c65e5e41fadea2f015
      
https://github.com/qemu/qemu/commit/842e7eecd4446957c5edf0c65e5e41fadea2f015
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M accel/accel-common.c
    M accel/hvf/hvf-all.c
    M accel/kvm/kvm-all.c
    M accel/tcg/tcg-all.c
    M include/qemu/accel.h

  Log Message:
  -----------
  accel: Pass AccelState argument to gdbstub_supported_sstep_flags()

In order to have AccelClass methods instrospect their state,
we need to pass AccelState by argument.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Message-Id: <20250703173248.44995-37-phi...@linaro.org>


  Commit: 0fd1d74080215571f2c8e2b85bfefb3c65238cfe
      
https://github.com/qemu/qemu/commit/0fd1d74080215571f2c8e2b85bfefb3c65238cfe
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M monitor/hmp-cmds-target.c

  Log Message:
  -----------
  monitor/hmp-cmds-target: add CPU_DUMP_VPU in hmp_info_registers()

Commit b84694defb added the CPU_DUMP_VPU to allow vector registers to be
logged by log_cpu_exec() in TCG. This flag was then used in commit
b227f6a8a7 to print RISC-V vector registers using this flag. Note that
this change was done in riscv_cpu_dump_state(), the cpu_dump_state()
callback for RISC-V, the same callback used in hmp_info_registers().

Back then we forgot to change hmp_info_registers(), and 'info registers'
isn't showing RISC-V vector registers as a result. No other target is
impacted since only RISC-V is using CPU_DUMP_VPU.

There's no reason to not show VPU regs in info_registers(), so add
CPU_DUMP_VPU to hmp_info_registers(). This will print vector registers
for all RISC-V machines and, as said above, has no impact in other
archs.

Cc: Dr. David Alan Gilbert <d...@treblig.org>
Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Message-ID: <20250623145306.991562-1-dbarb...@ventanamicro.com>
Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>


  Commit: c8beb901be15c57d166574ecf660261f0f23209f
      
https://github.com/qemu/qemu/commit/c8beb901be15c57d166574ecf660261f0f23209f
  Author: Philippe Mathieu-Daudé <phi...@linaro.org>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: Add me as reviewer of overall accelerators section

I'd like to be informed of overall changes of accelerators.

Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Message-Id: <20250703173248.44995-40-phi...@linaro.org>


  Commit: 6eba6fe967c3a2606ef5ec5ba9a283b21d09f85b
      
https://github.com/qemu/qemu/commit/6eba6fe967c3a2606ef5ec5ba9a283b21d09f85b
  Author: Jim Shu <jim....@sifive.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/time_helper.c

  Log Message:
  -----------
  target/riscv: Add the checking into stimecmp write function.

Preparation commit to let aclint timer to use stimecmp write function.
Aclint timer doesn't call sstc() predicate so we need to check inside
the stimecmp write function.

Signed-off-by: Jim Shu <jim....@sifive.com>
Acked-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250519143518.11086-2-jim....@sifive.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: af27fc569af58e10d9e77afd10079809f05827bc
      
https://github.com/qemu/qemu/commit/af27fc569af58e10d9e77afd10079809f05827bc
  Author: Jim Shu <jim....@sifive.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/intc/riscv_aclint.c

  Log Message:
  -----------
  hw/intc: riscv_aclint: Fix mtime write for sstc extension

When changing the mtime value, the period of [s|vs]timecmp timers
should also be updated, similar to the period of mtimecmp timer.

The period of the stimecmp timer is the time until the next S-mode
timer IRQ. The value is calculated as "stimecmp - time". [1]
It is equal to "stimecmp - mtime" since the time CSR is a read-only
shadow of the memory-mapped mtime register.
Thus, changing mtime value will update the period of stimecmp timer.

Similarly, the period of vstimecmp timer is calculated as "vstimecmp -
(mtime + htimedelta)" [2], so changing mtime value will update the
period of vstimecmp timer.

[1] RISC-V Priv spec ch 9.1.1. Supervisor Timer (stimecmp) Register
A supervisor timer interrupt becomes pending, as reflected in the STIP
bit in the mip and sip registers whenever time contains a value
greater than or equal to stimecmp.
[2] RISC-V Priv spec ch19.2.1. Virtual Supervisor Timer (vstimecmp) Register
A virtual supervisor timer interrupt becomes pending, as reflected in
the VSTIP bit in the hip register, whenever (time + htimedelta),
truncated to 64 bits, contains a value greater than or equal to
vstimecmp

Signed-off-by: Jim Shu <jim....@sifive.com>
Acked-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250519143518.11086-3-jim....@sifive.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 3cb2edae740121cf5da3a9adb8190051e866eb01
      
https://github.com/qemu/qemu/commit/3cb2edae740121cf5da3a9adb8190051e866eb01
  Author: Jim Shu <jim....@sifive.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/csr.c

  Log Message:
  -----------
  target/riscv: Fix VSTIP bit in sstc extension.

VSTIP is only writable when both [mh]envcfg.STCE is enabled, or it will
revert it's defined behavior as if sstc extension is not implemented.

Signed-off-by: Jim Shu <jim....@sifive.com>
Acked-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250519143518.11086-4-jim....@sifive.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: dff5f515409f1c9c10df00160524b21381cbef26
      
https://github.com/qemu/qemu/commit/dff5f515409f1c9c10df00160524b21381cbef26
  Author: Jim Shu <jim....@sifive.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/csr.c
    M target/riscv/time_helper.c
    M target/riscv/time_helper.h

  Log Message:
  -----------
  target/riscv: Enable/Disable S/VS-mode Timer when STCE bit is changed

Updating STCE will enable/disable SSTC in S-mode or/and VS-mode, so we
also need to update S/VS-mode Timer and S/VSTIP bits in $mip CSR.

Signed-off-by: Jim Shu <jim....@sifive.com>
Acked-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250519143518.11086-5-jim....@sifive.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 148499b343a9aac62c5f5d55617a1c317127e2e3
      
https://github.com/qemu/qemu/commit/148499b343a9aac62c5f5d55617a1c317127e2e3
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu.c

  Log Message:
  -----------
  target/riscv/cpu.c: fix zama16b order in isa_edata_arr[]

Put it after zalrsc and before zawrs.

Cc: qemu-triv...@nongnu.org
Fixes: a60ce58fd9 ("target/riscv: Support Zama16b extension")
Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250522113344.823294-1-dbarb...@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: a429f9304d54e9a44773b753d0844204b4b3b22f
      
https://github.com/qemu/qemu/commit/a429f9304d54e9a44773b753d0844204b4b3b22f
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/tcg/tcg-cpu.c

  Log Message:
  -----------
  target/riscv/tcg: restrict satp_mode changes in cpu_set_profile

We're changing 'mmu' to true regardless of whether the profile is
being enabled or not, and at the same time we're changing satp_mode to
profile->enabled.

This will promote a situation where we'll set mmu=on without a virtual
memory mode, which is a mistake.

Only touch 'mmu' and satp_mode if the profile is being enabled.

Suggested-by: Andrew Jones <ajo...@ventanamicro.com>
Fixes: 55398025e7 ("target/riscv: add satp_mode profile support")
Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Andrew Jones <ajo...@ventanamicro.com>
Reviewed-by: Björn Töpel <bj...@rivosinc.com>
Tested-by: Björn Töpel <bj...@rivosinc.com>
Message-ID: <20250528184407.1451983-2-dbarb...@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: f655704c3dfefd57172e3347c22aca18283ee2b7
      
https://github.com/qemu/qemu/commit/f655704c3dfefd57172e3347c22aca18283ee2b7
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/tcg/tcg-cpu.c

  Log Message:
  -----------
  target/riscv/tcg: decouple profile enablement from user prop

We have code in riscv_cpu_add_profiles() to enable a profile right away
in case a CPU chose the profile during its cpu_init(). But we're using
the user callback option to do so, setting profile->user_set.

Create a new helper that does all the grunt work to enable/disable a
given profile. Use this new helper in the cases where we want a CPU to
be compatible to a certain profile, leaving the user callback to be used
exclusively by users.

Fixes: fba92a92e3 ("target/riscv: add 'rva22u64' CPU")
Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Andrew Jones <ajo...@ventanamicro.com>
Reviewed-by: Björn Töpel <bj...@rivosinc.com>
Tested-by: Björn Töpel <bj...@rivosinc.com>
Message-ID: <20250528184407.1451983-3-dbarb...@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: cab6b5d8c351863b21d05eb8c9bb7920ad883b05
      
https://github.com/qemu/qemu/commit/cab6b5d8c351863b21d05eb8c9bb7920ad883b05
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu.h
    M target/riscv/riscv-qmp-cmds.c
    M target/riscv/tcg/tcg-cpu.c

  Log Message:
  -----------
  target/riscv: add profile->present flag

Björn reported in [1] a case where a rv64 CPU is going through the
profile code path to enable satp mode. In this case,the amount of
extensions on top of the rv64 CPU made it compliant with the RVA22S64
profile during the validation of CPU 0. When the subsequent CPUs were
initialized the static profile object has the 'enable' flag set,
enabling the profile code path for those CPUs.

This happens because we are initializing and realizing each CPU before
going to the next, i.e. init and realize CPU0, then init and realize
CPU1 and so on. If we change any persistent state during the validation
of CPU N it will interfere with the init/realization of CPU N+1.

We're using the 'enabled' profile flag to do two distinct things: inform
cpu_init() that we want profile extensions to be enabled, and telling
QMP that a profile is currently enabled in the CPU. We want to be
flexible enough to recognize profile support for all CPUs that has the
extension prerequisites, but we do not want to force the profile code
path if a profile wasn't set too.

Add a new 'present' flag for profiles that will coexist with the 'enabled'
flag. Enabling a profile means "we want to switch on all its mandatory
extensions". A profile is 'present' if we asserted during validation
that the CPU has the needed prerequisites.

This means that the case reported by Björn now results in
RVA22S64.enabled=false and RVA22S64.present=true. QMP will recognize it
as a RVA22 compliant CPU and we won't force the CPU into the profile
path.

[1] 
https://lore.kernel.org/qemu-riscv/87y0usiz22....@all.your.base.are.belong.to.us/

Reported-by: Björn Töpel <bj...@kernel.org>
Fixes: 2af005d610 ("target/riscv/tcg: validate profiles during finalize")
Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Andrew Jones <ajo...@ventanamicro.com>
Reviewed-by: Björn Töpel <bj...@rivosinc.com>
Tested-by: Björn Töpel <bj...@rivosinc.com>
Message-ID: <20250528184407.1451983-4-dbarb...@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 444cffd37b69b06f170aeaedadf1b52be96d4acd
      
https://github.com/qemu/qemu/commit/444cffd37b69b06f170aeaedadf1b52be96d4acd
  Author: Jay Chang <jay.ch...@sifive.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu_bits.h
    M target/riscv/csr.c

  Log Message:
  -----------
  target/riscv: Extend PMP region up to 64

According to the RISC-V Privileged Specification (version >1.12),
RV32 supports 16 CSRs (pmpcfg0–pmpcfg15) to configure 64 PMP regions
(pmpaddr0–pmpaddr63).

Signed-off-by: Jay Chang <jay.ch...@sifive.com>
Reviewed-by: Frank Chang <frank.ch...@sifive.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Message-ID: <20250522081236.4050-2-jay.ch...@sifive.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 455c0fa9eef7f27e5b50ebd2b6fe3447c4f1ca51
      
https://github.com/qemu/qemu/commit/455c0fa9eef7f27e5b50ebd2b6fe3447c4f1ca51
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu.c
    M target/riscv/cpu.h
    M target/riscv/tcg/tcg-cpu.c

  Log Message:
  -----------
  target/riscv: remove capital 'Z' CPU properties

These properties were deprecated in QEMU 8.2, commit 8043effd9b.

Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250530134608.1806922-1-dbarb...@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: f31ba686a9387640a905ac70fe682c15c461a134
      
https://github.com/qemu/qemu/commit/f31ba686a9387640a905ac70fe682c15c461a134
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu.c
    M target/riscv/tcg/tcg-cpu.c
    M tests/data/acpi/riscv64/virt/RHCT

  Log Message:
  -----------
  target/riscv/cpu.c: add 'sdtrig' in riscv,isa

We have support for sdtrig for awhile but we are not advertising it. It
is enabled by default via the 'debug' flag. Use the same flag to also
advertise sdtrig.

Add an exception in disable_priv_spec_isa_exts() to avoid spamming
warnings for 'sdtrig' for vendor CPUs like sifive_u.

Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250604174329.1147549-2-dbarb...@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: bab2be19239bc8e586a868eafd1c78a2d55a1a58
      
https://github.com/qemu/qemu/commit/bab2be19239bc8e586a868eafd1c78a2d55a1a58
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu.c
    M tests/data/acpi/riscv64/virt/RHCT

  Log Message:
  -----------
  target/riscv/cpu.c: add 'ssstrict' to riscv, isa

'ssstrict' is a RVA23 profile-defined extension defined as follows:

"No non-conforming extensions are present. Attempts to execute
unimplemented opcodes or access unimplemented CSRs in the standard or
reserved encoding spaces raises an illegal instruction exception that
results in a contained trap to the supervisor-mode trap handler."

In short, we need to throw an exception when accessing unimplemented
CSRs or opcodes. We do that, so let's advertise it.

Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Andrew Jones <ajo...@ventanamicro.com>
Message-ID: <20250529202315.1684198-3-dbarb...@ventanamicro.com>
Message-ID: <20250604174329.1147549-3-dbarb...@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 5ee4f21713d51fdf3d8756744ffe92365df8598b
      
https://github.com/qemu/qemu/commit/5ee4f21713d51fdf3d8756744ffe92365df8598b
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu.c

  Log Message:
  -----------
  target/riscv/cpu.c: do better with 'named features' doc

Most of the named features are added directly in isa_edata_arr[], some
of them are also added in riscv_cpu_named_features(). There is a reason
for that, and the existing docs can do better explaining it.

Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Message-ID: <20250529202315.1684198-4-dbarb...@ventanamicro.com>
Acked-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250604174329.1147549-4-dbarb...@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: f9eaa1542be5f7273dec1111a1e17d8ff2a5bcba
      
https://github.com/qemu/qemu/commit/f9eaa1542be5f7273dec1111a1e17d8ff2a5bcba
  Author: Jim Shu <jim....@sifive.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/translate.c

  Log Message:
  -----------
  target/riscv: support atomic instruction fetch (Ziccif)

Support 4-byte atomic instruction fetch when instruction is natural
aligned.

Current implementation is not atomic because it loads instruction twice
for first and last 2 bytes. We load 4 bytes at once to keep the
atomicity. This instruction preload method only applys when instruction
is 4-byte aligned. If instruction is unaligned, it could be across pages
so that preload will trigger additional page fault.

We encounter this issue when doing pressure test of enabling & disabling
Linux kernel ftrace. Ftrace with kernel preemption requires concurrent
modification and execution of instruction, so non-atomic instruction
fetch will cause the race condition. We may fetch the wrong instruction
which is the mixing of 2 instructions.

Also, RISC-V Profile wants to provide this feature by HW. RVA20U64
Ziccif protects the atomicity of instruction fetch when it is
natural aligned.

This commit depends on the atomic read support of translator_ld in
the commit 6a9dfe1984b0c593fb0ddb52d4e70832e6201dd6.

Signed-off-by: Jim Shu <jim....@sifive.com>
Reviewed-by: Frank Chang <frank.ch...@sifive.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250508094838.19394-1-jim....@sifive.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: b0175841fa4f867b4b1219dba72c33392118dd43
      
https://github.com/qemu/qemu/commit/b0175841fa4f867b4b1219dba72c33392118dd43
  Author: Meng Zhuo <mengz...@iscas.ac.cn>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/kvm/kvm-cpu.c

  Log Message:
  -----------
  target/riscv/kvm: add max_satp_mode from host cpu

This patch adds max_satp_mode from host kvm cpu setting.

Tested on: Milkv Megrez (Eswin 7700x)

Reviewed-by: Andrew Jones <ajo...@ventanamicro.com>
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2931
Signed-off-by: Meng Zhuo <mengz...@iscas.ac.cn>
Message-ID: <20250606034250.181707-1-mengz...@iscas.ac.cn>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: cd633bea8b0d30f3418b0dd372116bf3e028e42f
      
https://github.com/qemu/qemu/commit/cd633bea8b0d30f3418b0dd372116bf3e028e42f
  Author: Jay Chang <jay.ch...@sifive.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu.c
    M target/riscv/cpu.h
    M target/riscv/cpu_cfg_fields.h.inc
    M target/riscv/csr.c
    M target/riscv/machine.c
    M target/riscv/pmp.c

  Log Message:
  -----------
  target/riscv: Make PMP region count configurable

Previously, the number of PMP regions was hardcoded to 16 in QEMU.
This patch replaces the fixed value with a new `pmp_regions` field,
allowing platforms to configure the number of PMP regions.

If no specific value is provided, the default number of PMP regions
remains 16 to preserve the existing behavior.

A new CPU parameter num-pmp-regions has been introduced to the QEMU
command line. For example:

        -cpu rv64, g=true, c=true, pmp=true, num-pmp-regions=8

Signed-off-by: Jay Chang <jay.ch...@sifive.com>
Reviewed-by: Frank Chang <frank.ch...@sifive.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250606072525.17313-3-jay.ch...@sifive.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 5000ba0cb1c513283f0a2f2f9742cfe8053dab8d
      
https://github.com/qemu/qemu/commit/5000ba0cb1c513283f0a2f2f9742cfe8053dab8d
  Author: Nutty Liu <liujin...@lanxincomputing.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

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

  Log Message:
  -----------
  hw/riscv/riscv-iommu: Fix PPN field of Translation-reponse register

The original implementation incorrectly performed a bitwise AND
operation between the PPN of iova and PPN Mask, leading to an
incorrect PPN field in Translation-reponse register.

The PPN of iova should be set entirely in the PPN field of
Translation-reponse register.

Also remove the code that was used to clear S field since this
field is already zero.

Signed-off-by: Nutty Liu <liujin...@lanxincomputing.com>
Reviewed-by: Tomasz Jeznach <tjezn...@rivosinc.com>
Message-ID: <20250605124848.1248-1-liujin...@lanxincomputing.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 7ec39d0cc945dd81108e08ca37afcfb3c9e5e012
      
https://github.com/qemu/qemu/commit/7ec39d0cc945dd81108e08ca37afcfb3c9e5e012
  Author: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/kvm/kvm-cpu.c

  Log Message:
  -----------
  target/riscv: use qemu_chr_fe_write_all() in DBCN_CONSOLE_WRITE_BYTE

The SBI spec states, for console write byte:

"This is a blocking SBI call and it will only return after writing the
specified byte to the debug console. It will also return, with
SBI_ERR_FAILED, if there are I/O errors."

Being a blocker call will either succeed writing the byte or error out,
it's feasible to use the blocking qemu_chr_fe_write_all() instead of
qemu_chr_fe_write().

Last but not the least, we will duck possible changes in
qemu_chr_fe_write() where ret = 0 will have a 'zero byte written'
semantic [1] - something that we're not ready to deal in this current
state.

[1] 
https://lore.kernel.org/qemu-devel/CAFEAcA_kEndvNtw4EHySXWwQPoGs029yAzZGGBcV=zghaj7...@mail.gmail.com/

Signed-off-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org>
Message-ID: <20250605094456.1385105-2-dbarb...@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 2b027e73eefab0f9d3a0048564d1b653ba1d7703
      
https://github.com/qemu/qemu/commit/2b027e73eefab0f9d3a0048564d1b653ba1d7703
  Author: Anton Blanchard <ant...@tenstorrent.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/fpu_helper.c
    M target/riscv/internals.h

  Log Message:
  -----------
  target/riscv: Fix fcvt.s.bf16 NaN box checking

fcvt.s.bf16 uses the FP16 check_nanbox_h() which returns an FP16
quiet NaN. Add check_nanbox_bf16() which returns a BF16 quiet NaN.

Signed-off-by: Anton Blanchard <ant...@tenstorrent.com>
Acked-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250501114253.594887-1-ant...@tenstorrent.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 61240e3a06dc622d249b530557d5ce03c5854592
      
https://github.com/qemu/qemu/commit/61240e3a06dc622d249b530557d5ce03c5854592
  Author: Florian Lugou <florian.lu...@provenrun.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/char/sifive_uart.c

  Log Message:
  -----------
  hw/char: sifive_uart: Avoid infinite delay of async xmit function

The current handler for TXFIFO writes schedules an async callback to
pop characters from the queue. When software writes to TXFIFO faster
than the async callback delay (100ns), the timer may be pushed back
while the previous character has not be dequeued yet. This happens in
particular when using -icount with small shift values. This is
especially worrysome when software repetitively issues amoor.w
instructions (as suggested by SiFive specification) and the FIFO is
full, leading to the callback being infinitly pushed back.

This commit fixes the issue by never pushing back the timer, only
updating it if it is not already active.

Signed-off-by: Florian Lugou <florian.lu...@provenrun.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250605101255.797162-1-florian.lu...@provenrun.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 81a245091fff2651f14004d1820f7ee77dd4f0fc
      
https://github.com/qemu/qemu/commit/81a245091fff2651f14004d1820f7ee77dd4f0fc
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Fix clint base address type

The address is a hardware address, so use hwaddr for consistency with
the rest of the machine.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-2-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 16adb1f5d7ac548983f1b59d8e15f2eb5e51ae2c
      
https://github.com/qemu/qemu/commit/16adb1f5d7ac548983f1b59d8e15f2eb5e51ae2c
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for clint

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-3-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 349500bfb8523c94f88da4bfc41a22ccbba19055
      
https://github.com/qemu/qemu/commit/349500bfb8523c94f88da4bfc41a22ccbba19055
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for memory

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-4-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 4b7b4f9cb4fd4b569661e690c593780332d7291a
      
https://github.com/qemu/qemu/commit/4b7b4f9cb4fd4b569661e690c593780332d7291a
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for aplic

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-5-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: dd3d4fd9923082d8d2ad6ed71b4be05dad36b601
      
https://github.com/qemu/qemu/commit/dd3d4fd9923082d8d2ad6ed71b4be05dad36b601
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for aclint

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-6-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 507161b5f53ae37e2aeeb99e558485146546331e
      
https://github.com/qemu/qemu/commit/507161b5f53ae37e2aeeb99e558485146546331e
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for plic

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-7-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: ad41a7022bd10a2db922cd4e314af2b2f1b6caa0
      
https://github.com/qemu/qemu/commit/ad41a7022bd10a2db922cd4e314af2b2f1b6caa0
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for virtio

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-8-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 08454fc3f5e43338c2e13dc040a2ebe77834945f
      
https://github.com/qemu/qemu/commit/08454fc3f5e43338c2e13dc040a2ebe77834945f
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for reset

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-9-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 4f1572d6f191f4618b30be3fda7344461910a03f
      
https://github.com/qemu/qemu/commit/4f1572d6f191f4618b30be3fda7344461910a03f
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for uart

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-10-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: faa991f67888ae25744f535ad73043900729c024
      
https://github.com/qemu/qemu/commit/faa991f67888ae25744f535ad73043900729c024
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for rtc

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-11-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 0e7e0ee63939a09b098279a475698d73243ffc76
      
https://github.com/qemu/qemu/commit/0e7e0ee63939a09b098279a475698d73243ffc76
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for iommu

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-12-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 2454fc95ece3c73f649e21621775bcbe859d28ec
      
https://github.com/qemu/qemu/commit/2454fc95ece3c73f649e21621775bcbe859d28ec
  Author: Joel Stanley <j...@jms.id.au>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/virt.c

  Log Message:
  -----------
  hw/riscv/virt: Use setprop_sized_cells for pcie

The current device tree property uses two cells for the address (and for
the size), but assumes the they are less than 32 bits by hard coding the
high cell to zero.

Use qemu_fdt_setprop_sized_cells to do the job of splitting the upper
and lower 32 bits across cells.

Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Signed-off-by: Joel Stanley <j...@jms.id.au>
Message-ID: <20250604025450.85327-13-j...@jms.id.au>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 60aab7ad11e6cd8a82420ed6a18416853c0fb762
      
https://github.com/qemu/qemu/commit/60aab7ad11e6cd8a82420ed6a18416853c0fb762
  Author: Huang Borong <3543977...@qq.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu-qom.h
    M target/riscv/cpu.c

  Log Message:
  -----------
  target/riscv: Add BOSC's Xiangshan Kunminghu CPU

Add a CPU entry for the Xiangshan Kunminghu CPU, an open-source,
high-performance RISC-V processor. More details can be found at:
https://github.com/OpenXiangShan/XiangShan

Note: The ISA extensions supported by the Xiangshan Kunminghu CPU are
categorized based on four RISC-V specifications: Volume I: Unprivileged
Architecture, Volume II: Privileged Architecture, AIA, and RVA23. The
extensions within each category are organized according to the chapter
order in the specifications.

Signed-off-by: Yu Hu <h...@bosc.ac.cn>
Signed-off-by: Ran Wang <wang...@bosc.ac.cn>
Signed-off-by: Borong Huang <3543977...@qq.com>
Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Acked-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250425122212.364-1-wang...@bosc.ac.cn>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 29abd3d112c380b8019a77ebad65f61addfb812d
      
https://github.com/qemu/qemu/commit/29abd3d112c380b8019a77ebad65f61addfb812d
  Author: Huang Borong <3543977...@qq.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M MAINTAINERS
    M configs/devices/riscv64-softmmu/default.mak
    A docs/system/riscv/xiangshan-kunminghu.rst
    M docs/system/target-riscv.rst
    M hw/riscv/Kconfig
    M hw/riscv/meson.build
    A hw/riscv/xiangshan_kmh.c
    A include/hw/riscv/xiangshan_kmh.h

  Log Message:
  -----------
  hw/riscv: Initial support for BOSC's Xiangshan Kunminghu FPGA prototype

This implementation provides emulation for the Xiangshan Kunminghu
FPGA prototype platform, including support for UART, CLINT, IMSIC,
and APLIC devices. More details can be found at
https://github.com/OpenXiangShan/XiangShan

Signed-off-by: qinshaoqing <qinshaoq...@bosc.ac.cn>
Signed-off-by: Yang Wang <wangy...@bosc.ac.cn>
Signed-off-by: Yu Hu <819258...@qq.com>
Signed-off-by: Ran Wang <wang...@bosc.ac.cn>
Signed-off-by: Borong Huang <3543977...@qq.com>
Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Message-ID: <20250617074222.17618-1-wang...@bosc.ac.cn>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: b5092b3db23391d6ee770123715b76b85169d977
      
https://github.com/qemu/qemu/commit/b5092b3db23391d6ee770123715b76b85169d977
  Author: Max Chou <max.c...@sifive.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/insn_trans/trans_rvv.c.inc

  Log Message:
  -----------
  target/riscv: rvv: Fix missing exit TB flow for ldff_trans

According to the V spec, the vector fault-only-first load instructions
may change the VL CSR.
So the ldff_trans TCG translation function should generate the
lookup_and_goto_ptr flow as the vsetvl/vsetvli translation function to
make sure the vl_eq_vlmax TB flag is correct.

Signed-off-by: Max Chou <max.c...@sifive.com>
Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
Message-ID: <20250627133013.443997-1-max.c...@sifive.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: bc2200134c1229a83bbcd8e75ab541ca110609f6
      
https://github.com/qemu/qemu/commit/bc2200134c1229a83bbcd8e75ab541ca110609f6
  Author: liu.xuem...@zte.com.cn <liu.xuem...@zte.com.cn>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/intc/riscv_aplic.c
    M hw/intc/riscv_imsic.c

  Log Message:
  -----------
  migration: Fix migration failure when aia is configured as aplic-imsic

Address an error in migration when aia is configured as 'aplic-imsic' in
riscv kvm vm by adding riscv_aplic_state_needed() and
riscv_imsic_state_needed() to determine whether the corresponding sates are
needed.

Previously, the fields in the vmsds of 'riscv_aplic' and 'riscv_imsic' can
only be initialized under certain special conditions in commit 95a97b3fd2.
However, the corresponding ses of these vmsds are inserted into the
savevm_state.handlers unconditionally. This led to migration failure
characterized by uninitialized fields when save vm state:
qemu-system-riscv64: ../migration/vmstate.c:433: vmstate_save_state_v:
Assertion 'first_elem || !n_elems || !size' failed.

Fixes: 95a97b3fd2 ("target/riscv: update APLIC and IMSIC to support KVM AIA")

Signed-off-by: Xuemei Liu <liu.xuem...@zte.com.cn>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Message-ID: <20250616150034827wuhs_ffe3qm8cqfxt7...@zte.com.cn>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: b3452452e64be647fef98d2dce16c3f5c149235a
      
https://github.com/qemu/qemu/commit/b3452452e64be647fef98d2dce16c3f5c149235a
  Author: Charalampos Mitrodimas <charmi...@posteo.net>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/csr.c
    M target/riscv/internals.h
    M target/riscv/op_helper.c

  Log Message:
  -----------
  target/riscv: Fix MEPC/SEPC bit masking for IALIGN

According to the RISC-V Privileged Architecture specification, the low
bit of MEPC/SEPC must always be zero. When IALIGN=32, the two low bits
must be zero.

This commit fixes the behavior of MEPC/SEPC CSR reads and writes, and
the implicit reads by MRET/SRET instructions to properly mask the
lowest bit(s) based on whether the C extension is enabled:
- When C extension is enabled (IALIGN=16): mask bit 0
- When C extension is disabled (IALIGN=32): mask bits [1:0]

Previously, when vectored mode bits from STVEC (which sets bit 0 for
vectored mode) were written to MEPC, the bits would not be cleared
correctly, causing incorrect behavior on MRET.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2855
Signed-off-by: Charalampos Mitrodimas <charmi...@posteo.net>
Reviewed-by: Alistair Francis <alistair.fran...@wdc.com>
Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Message-ID: <20250703182157.281320-2-charmi...@posteo.net>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: a1f44e0c59081afceb5e2b389b6de96602f73977
      
https://github.com/qemu/qemu/commit/a1f44e0c59081afceb5e2b389b6de96602f73977
  Author: Charalampos Mitrodimas <charmi...@posteo.net>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M tests/tcg/riscv64/Makefile.softmmu-target
    A tests/tcg/riscv64/test-mepc-masking.S

  Log Message:
  -----------
  tests/tcg/riscv64: Add test for MEPC bit masking

Add a regression test to verify that MEPC properly masks the lower
bits when an address with mode bits is written to it, as required by
the RISC-V Privileged Architecture specification.

The test sets STVEC to an address with bit 0 set (vectored mode),
triggers an illegal instruction exception, copies STVEC to MEPC in the
trap handler, and verifies that MEPC masks bits [1:0] correctly for
IALIGN=32.

Without the fix, MEPC retains the mode bits (returns non-zero/FAIL).
With the fix, MEPC clears bits [1:0] (returns 0/PASS).

Signed-off-by: Charalampos Mitrodimas <charmi...@posteo.net>
Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Message-ID: <20250703182157.281320-3-charmi...@posteo.net>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: 5625817e8b77715b18d0ce3bfcc59fb337e387d8
      
https://github.com/qemu/qemu/commit/5625817e8b77715b18d0ce3bfcc59fb337e387d8
  Author: Vasilis Liaskovitis <vliaskovi...@suse.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M target/riscv/cpu.c
    M target/riscv/cpu_cfg_fields.h.inc
    M target/riscv/helper.h
    M target/riscv/insn_trans/trans_rvv.c.inc
    M target/riscv/vector_helper.c

  Log Message:
  -----------
  target/riscv: Add a property to set vill bit on reserved usage of vsetvli 
instruction

Usage of vsetvli instruction is reserved if VLMAX is changed when vsetvli rs1
and rd arguments are x0.

In this case, if the new property is true, only the vill bit will be set.

See 
https://github.com/riscv/riscv-isa-manual/blob/main/src/v-st-ext.adoc#avl-encoding
According to the spec, the above use cases are reserved, and
"Implementations may set vill in either case."

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2422
Signed-off-by: Vasilis Liaskovitis <vliaskovi...@suse.com>
Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Message-ID: <20250618213542.22873-1-vliaskovi...@suse.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: dc8bffc4eb0a93d3266cea1b17f8848dea5b915c
      
https://github.com/qemu/qemu/commit/dc8bffc4eb0a93d3266cea1b17f8848dea5b915c
  Author: Alexandre Ghiti <alexgh...@rivosinc.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M hw/riscv/riscv-iommu-bits.h
    M hw/riscv/riscv-iommu.c
    M target/riscv/cpu.c
    M target/riscv/cpu_bits.h
    M target/riscv/cpu_cfg_fields.h.inc
    M target/riscv/cpu_helper.c
    M target/riscv/tcg/tcg-cpu.c

  Log Message:
  -----------
  target: riscv: Add Svrsw60t59b extension support

The Svrsw60t59b extension allows to free the PTE reserved bits 60 and 59
for software to use.

Reviewed-by: Deepak Gupta <de...@rivosinc.com>
Signed-off-by: Alexandre Ghiti <alexgh...@rivosinc.com>
Reviewed-by: Daniel Henrique Barboza <dbarb...@ventanamicro.com>
Reviewed-by: Nutty Liu<liujin...@lanxincomputing.com>
Message-ID: <20250702-dev-alex-svrsw60b59b_v2-v2-1-504ddf0f8...@rivosinc.com>
Signed-off-by: Alistair Francis <alistair.fran...@wdc.com>


  Commit: a876b05d38c813501e60fb50c8a45b30a965e902
      
https://github.com/qemu/qemu/commit/a876b05d38c813501e60fb50c8a45b30a965e902
  Author: Stefan Hajnoczi <stefa...@redhat.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M docs/about/deprecated.rst
    M docs/system/arm/aspeed.rst
    M hw/arm/Kconfig
    M hw/arm/aspeed.c
    M hw/arm/aspeed_eeprom.c
    M hw/arm/aspeed_eeprom.h
    M hw/misc/aspeed_scu.c
    M hw/misc/aspeed_sdmc.c
    M include/hw/arm/aspeed.h
    M tests/functional/aspeed.py
    M tests/functional/meson.build
    A tests/functional/test_arm_aspeed_catalina.py
    A tests/functional/test_arm_aspeed_gb200nvl_bmc.py
    A tests/qtest/aspeed_scu-test.c
    M tests/qtest/meson.build

  Log Message:
  -----------
  Merge tag 'pull-aspeed-20250704' of https://github.com/legoater/qemu into 
staging

aspeed queue:

* Improved AST2700 SoC modeling (SDMC, SCU)
* Fixed hardware strapping of 'bletchley-bmc' machine
* Added new Meta 'catalina-bmc' machine and functional test using OpenBMC
* Improved AST2600 SCU protection key modeling
* Introduced AST2600 SCU unit tests
* Deprecated 'ast2700a0-evb' machine
* Added new NVIDIA 'gb200-bmc' machine and functional test using OpenBMC

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEEoPZlSPBIlev+awtgUaNDx8/77KEFAmhnknUACgkQUaNDx8/7
# 7KFPDBAAiHW7cu64JszAPk3SBHR8b021JpOrnF9Xp/UHMjNt0Kuazm6jkc/FeOJf
# yOKGfvuZUiLLcTrN8iCrVjjxIMKlzQP4KQEFaAPyxvKZo6j4czFZQ7AHS3G28w8l
# qrF4UsOhgQ6TL6fXMyqzDSLDEf5o/1ZCn1t+wkuDeVR7YVoAFj/si/A+qmIGQODJ
# egVmBopUzGrnGCcZREcKfJKmx1JOfVGFpm5HHPlazCaNTyKynd4rm2qP2St1eDEQ
# vOvSBZXKUHmpV9ckdY+Hp0VHvO2oIifDTN+Zbd2XT9RxO36VMnQxiSxOZOj/aRWa
# dc87OprPKjjS7Tbg7SZF7ySgfOShXWtNOwLuyrlw6BFsaHtwU2VP/mYR/Tfz/1Lw
# 57ufAj04nh8bWp7LApXyui53/1X431oBFji6agWnonMut+e5Xv0JKdBeCu2y8Fj4
# wPpiNcaa8AgHUuJ8T/WXrogeAYXYPI7z1iCY5tX9xffvcL6B3cVLGlI+mXoCIK7O
# MTuS5d8CB0gQondLS0Y86ls5pM3RkW6izragH38ukuubKIRq1hjxFDBnF8AQJl7A
# pUWTTxhxNZaJie0F5grD7aCVPCSSr1ck1V3zbW/ffVX+7kEtCBW/Zk4qfw9/SGxd
# 2QKbstRPNgTl78EKquYwipFVNyHTP/W8iXfxwpFALKBJFkmzAjQ=
# =i7wx
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 04 Jul 2025 04:36:05 EDT
# gpg:                using RSA key A0F66548F04895EBFE6B0B6051A343C7CFFBECA1
# gpg: Good signature from "Cédric Le Goater <c...@redhat.com>" [full]
# gpg:                 aka "Cédric Le Goater <c...@kaod.org>" [full]
# Primary key fingerprint: A0F6 6548 F048 95EB FE6B  0B60 51A3 43C7 CFFB ECA1

* tag 'pull-aspeed-20250704' of https://github.com/legoater/qemu:
  tests/functional: Add gb200 tests
  hw/arm/aspeed: Add GB200 BMC target
  docs: add support for gb200-bmc
  hw/arm/aspeed: Add second SPI chip to Aspeed model
  aspeed: Deprecate the ast2700a0-evb machine
  tests/qtest: Add test for ASPEED SCU
  hw/misc/aspeed_scu: Handle AST2600 protection key registers correctly
  hw/arm/aspeed: add Catalina machine type
  hw/arm/aspeed: bletchley: update hw strap values
  hw/misc/aspeed_scu: Support the Frequency Counter Control register for AST2700
  hw/misc/aspeed_sdmc: Skipping dram_init in u-boot for AST2700

Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com>


  Commit: 563ac3d18129a2770a285cc16c20ad50c8adc7c0
      
https://github.com/qemu/qemu/commit/563ac3d18129a2770a285cc16c20ad50c8adc7c0
  Author: Stefan Hajnoczi <stefa...@redhat.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M .b4-config
    M Makefile
    M accel/kvm/kvm-all.c
    M backends/iommufd.c
    M backends/trace-events
    M docs/devel/migration/CPR.rst
    M hw/i386/Kconfig
    M hw/vfio-user/container.c
    M hw/vfio/ap.c
    M hw/vfio/ccw.c
    M hw/vfio/container-base.c
    A hw/vfio/cpr-iommufd.c
    M hw/vfio/cpr-legacy.c
    M hw/vfio/cpr.c
    M hw/vfio/device.c
    M hw/vfio/helpers.c
    A hw/vfio/iommufd-stubs.c
    M hw/vfio/iommufd.c
    M hw/vfio/meson.build
    M hw/vfio/pci.c
    M hw/vfio/pci.h
    M hw/vfio/platform.c
    M hw/vfio/trace-events
    M include/exec/cpu-common.h
    M include/hw/vfio/vfio-container-base.h
    M include/hw/vfio/vfio-cpr.h
    M include/hw/vfio/vfio-device.h
    M include/migration/cpr.h
    M include/system/iommufd.h
    M include/system/kvm.h
    M migration/cpr.c
    M qapi/migration.json
    M system/physmem.c

  Log Message:
  -----------
  Merge tag 'pull-vfio-20250704' of https://github.com/legoater/qemu into 
staging

vfio queue:

* Added small cleanups for b4 and scope
* Restricted TDX build to 64-bit target
* Fixed issues introduced in first part of VFIO live update support
* Added full VFIO live update support

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEEoPZlSPBIlev+awtgUaNDx8/77KEFAmhnlBMACgkQUaNDx8/7
# 7KFOxw//dIPpGcYIjEGpIkIh6NF3VK6xmDAG0aZEeM+5fCzdor2DPkD7ZPyqND3S
# /YkR8GSOHd+Qm5W+73LHOdV5RFMt4wagyHiAKUMpEFHY7ZLduxIXlACoUo+F5cnh
# SUnhC6KX7Gu1/Nndb4X4w6SNOyhoRKtQ2EqpRsrGdIaBkX8s6w2jF/INPTPdpg73
# lulJZCAFNzyIWytck9ohJf8To9IsvkCXTF6mcywURa9MBaAarRttXoFjuZsXb7zn
# NqGVtantNAaJmKu26X3ScUWn9P02WryhPB6KT7+B3G/b87Su1cnbAwYakNSFPJIx
# I/gaw0EPzHM+b6mavA4IdvKDJGR7GMvpJEGqUEpntc6FJ3+g1B7qsedgeBUc/RKB
# UaRmtYbvlMv5wSmaLcxsT3S3BnABbrd4EedZX5uOBFMrtnTiOqrMUEcoMaf5ogvN
# KlJkrjNQkfHxTbp5G+nXHuTzae3k2Ylm196b2yhgARfUL70jiak/B+ADeezVcVmW
# 6ZpotrAvMxu9RlFdxTSbL0/lR0rfKZTecqMOSFA+FlmjcTJ0QW1SbweMdsfgW/uU
# /2Hfmw6zUQ80/tMqYMztFWsiov7C8a8ZMmuZwDQp+AdCVGgFEigfNJVQYgujbqKz
# g9Ta9cNPyvF5hpnml5u8IzAzM95HrhIPFmmpUBZyWOCeL6chSHk=
# =Cu7b
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 04 Jul 2025 04:42:59 EDT
# gpg:                using RSA key A0F66548F04895EBFE6B0B6051A343C7CFFBECA1
# gpg: Good signature from "Cédric Le Goater <c...@redhat.com>" [full]
# gpg:                 aka "Cédric Le Goater <c...@kaod.org>" [full]
# Primary key fingerprint: A0F6 6548 F048 95EB FE6B  0B60 51A3 43C7 CFFB ECA1

* tag 'pull-vfio-20250704' of https://github.com/legoater/qemu: (27 commits)
  vfio: doc changes for cpr
  vfio/container: delete old cpr register
  iommufd: preserve DMA mappings
  vfio/iommufd: change process
  vfio/iommufd: reconstruct hwpt
  vfio/iommufd: reconstruct device
  vfio/iommufd: preserve descriptors
  vfio/iommufd: cpr state
  migration: vfio cpr state hook
  vfio/iommufd: register container for cpr
  vfio/iommufd: device name blocker
  vfio/iommufd: add vfio_device_free_name
  vfio/iommufd: invariant device name
  vfio/iommufd: use IOMMU_IOAS_MAP_FILE
  physmem: qemu_ram_get_fd_offset
  backends/iommufd: change process ioctl
  backends/iommufd: iommufd_backend_map_file_dma
  migration: cpr_get_fd_param helper
  migration: close kvm after cpr
  vfio-pci: preserve INTx
  ...

Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com>


  Commit: 989dd906ed5556563a57b32ae7abf9db5e1f38ba
      
https://github.com/qemu/qemu/commit/989dd906ed5556563a57b32ae7abf9db5e1f38ba
  Author: Stefan Hajnoczi <stefa...@redhat.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M MAINTAINERS
    M accel/accel-common.c
    M accel/accel-system.c
    M accel/dummy-cpus.c
    A accel/dummy-cpus.h
    M accel/hvf/hvf-accel-ops.c
    M accel/hvf/hvf-all.c
    M accel/kvm/kvm-accel-ops.c
    M accel/kvm/kvm-all.c
    M accel/qtest/qtest.c
    M accel/stubs/kvm-stub.c
    M accel/stubs/meson.build
    A accel/stubs/nvmm-stub.c
    A accel/stubs/whpx-stub.c
    M accel/tcg/internal-common.h
    M accel/tcg/monitor.c
    M accel/tcg/tcg-accel-ops.c
    M accel/tcg/tcg-all.c
    M accel/xen/xen-all.c
    M bsd-user/main.c
    M hmp-commands-info.hx
    M include/hw/core/cpu.h
    M include/qemu/accel.h
    M include/system/accel-ops.h
    M include/system/cpus.h
    M include/system/hvf.h
    M include/system/hvf_int.h
    M include/system/hw_accel.h
    M include/system/kvm.h
    M include/system/nvmm.h
    M include/system/whpx.h
    M linux-user/main.c
    M monitor/hmp-cmds-target.c
    M qapi/machine.json
    M system/cpus.c
    M system/memory.c
    M target/arm/hvf/hvf.c
    M target/i386/hvf/hvf.c
    M target/i386/hvf/x86hvf.c
    M target/i386/nvmm/nvmm-accel-ops.c
    M target/i386/nvmm/nvmm-all.c
    M target/i386/whpx/whpx-accel-ops.c
    M target/i386/whpx/whpx-all.c
    M tests/qtest/qmp-cmd-test.c

  Log Message:
  -----------
  Merge tag 'accel-20250704' of https://github.com/philmd/qemu into staging

Accelerators patches

- Generic API consolidation, cleanups (dead code removal, documentation added)
- Remove monitor TCG 'info opcount' and @x-query-opcount
- Have HVF / NVMM / WHPX use generic CPUState::vcpu_dirty field
- Expose nvmm_enabled() and whpx_enabled() to common code
- Have hmp_info_registers() dump vector registers

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEE+qvnXhKRciHc/Wuy4+MsLN6twN4FAmhnql4ACgkQ4+MsLN6t
# wN6Lfg//R4h6dyAg02hyopwb/DSI97hAsD9kap15ro1qszYrIOkJcEPoE37HDi6d
# O0Ls+8NPpJcnMwdghHvVaRGoIH2OY5ogXKo6UK1BbOn8iAGxRrT/IPVCyFbPmQoe
# Bk78Z/wne/YgCXiW4HGHSJO5sL04AQqcFYnwjisHHf3Ox8RR85LbhWqthZluta4i
# a/Y8W5UO7jfwhAl1/Zb2cU+Rv75I6xcaLQAfmbt4j+wHP52I2cjLpIYo4sCn+ULJ
# AVX4q4MKrkDrr6CYPXxdGJzYEzVn9evynVcQoRzL6bLZFMpa284AzVd3kQg9NWAb
# p1hvKJTA57q4XDoD50qVGLhP207VVSUcdm0r2ZJA2jag5ddoT+x2talz8/f6In1b
# 7BrSM/pla8x9KvTne/ko0wSL0o2dOWyig8mBxARLZWPxk+LBVs1PBZfvn+3j1pYA
# rWV25Ht4QJlUYMbe3NvEIomsVThKg8Fh3b4mEuyPM+LZ1brgmhrzJG1SF+G4fH8A
# aig/RVqgNHtajSnG4A723k2/QzlvnAiT7E3dKB5FogjTcVzFRaWFKsUb4ORqsCAz
# c/AheCJY4PP3pAnb0ODISSVviXwAXqCLbtZhDGhHNYl3C69EyGPPMiVxCaIxKDxU
# bF7AIYhRTTMyNSbnkcRS3UDO/gZS7x5/K+/YAM9akQEYADIodYM=
# =Vb39
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 04 Jul 2025 06:18:06 EDT
# gpg:                using RSA key FAABE75E12917221DCFD6BB2E3E32C2CDEADC0DE
# gpg: Good signature from "Philippe Mathieu-Daudé (F4BUG) <f4...@amsat.org>" 
[full]
# Primary key fingerprint: FAAB E75E 1291 7221 DCFD  6BB2 E3E3 2C2C DEAD C0DE

* tag 'accel-20250704' of https://github.com/philmd/qemu: (31 commits)
  MAINTAINERS: Add me as reviewer of overall accelerators section
  monitor/hmp-cmds-target: add CPU_DUMP_VPU in hmp_info_registers()
  accel: Pass AccelState argument to gdbstub_supported_sstep_flags()
  accel: Remove unused MachineState argument of AccelClass::setup_post()
  accel: Directly pass AccelState argument to AccelClass::has_memory()
  accel/kvm: Directly pass KVMState argument to do_kvm_create_vm()
  accel/kvm: Prefer local AccelState over global MachineState::accel
  accel/tcg: Prefer local AccelState over global current_accel()
  accel: Propagate AccelState to AccelClass::init_machine()
  accel: Keep reference to AccelOpsClass in AccelClass
  accel: Expose and register generic_handle_interrupt()
  accel/dummy: Extract 'dummy-cpus.h' header from 'system/cpus.h'
  accel/whpx: Expose whpx_enabled() to common code
  accel/nvmm: Expose nvmm_enabled() to common code
  accel/system: Document cpu_synchronize_state_post_init/reset()
  accel/system: Document cpu_synchronize_state()
  accel/kvm: Remove kvm_cpu_synchronize_state() stub
  accel/whpx: Replace @dirty field by generic CPUState::vcpu_dirty field
  accel/nvmm: Replace @dirty field by generic CPUState::vcpu_dirty field
  accel/hvf: Replace @dirty field by generic CPUState::vcpu_dirty field
  ...

Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com>


  Commit: e240f6cc25917f3138d9e95e0343ae23b63a3f8c
      
https://github.com/qemu/qemu/commit/e240f6cc25917f3138d9e95e0343ae23b63a3f8c
  Author: Stefan Hajnoczi <stefa...@redhat.com>
  Date:   2025-07-04 (Fri, 04 Jul 2025)

  Changed paths:
    M MAINTAINERS
    M configs/devices/riscv64-softmmu/default.mak
    A docs/system/riscv/xiangshan-kunminghu.rst
    M docs/system/target-riscv.rst
    M hw/char/sifive_uart.c
    M hw/intc/riscv_aclint.c
    M hw/intc/riscv_aplic.c
    M hw/intc/riscv_imsic.c
    M hw/riscv/Kconfig
    M hw/riscv/meson.build
    M hw/riscv/riscv-iommu-bits.h
    M hw/riscv/riscv-iommu.c
    M hw/riscv/virt.c
    A hw/riscv/xiangshan_kmh.c
    A include/hw/riscv/xiangshan_kmh.h
    M target/riscv/cpu-qom.h
    M target/riscv/cpu.c
    M target/riscv/cpu.h
    M target/riscv/cpu_bits.h
    M target/riscv/cpu_cfg_fields.h.inc
    M target/riscv/cpu_helper.c
    M target/riscv/csr.c
    M target/riscv/fpu_helper.c
    M target/riscv/helper.h
    M target/riscv/insn_trans/trans_rvv.c.inc
    M target/riscv/internals.h
    M target/riscv/kvm/kvm-cpu.c
    M target/riscv/machine.c
    M target/riscv/op_helper.c
    M target/riscv/pmp.c
    M target/riscv/riscv-qmp-cmds.c
    M target/riscv/tcg/tcg-cpu.c
    M target/riscv/time_helper.c
    M target/riscv/time_helper.h
    M target/riscv/translate.c
    M target/riscv/vector_helper.c
    M tests/data/acpi/riscv64/virt/RHCT
    M tests/tcg/riscv64/Makefile.softmmu-target
    A tests/tcg/riscv64/test-mepc-masking.S

  Log Message:
  -----------
  Merge tag 'pull-riscv-to-apply-20250704' of 
https://github.com/alistair23/qemu into staging

Second RISC-V PR for 10.1

* sstc extension fixes
* Fix zama16b order in isa_edata_arr
* Profile handling fixes
* Extend PMP region up to 64
* Remove capital 'Z' CPU properties
* Add missing named features
* Support atomic instruction fetch (Ziccif)
* Add max_satp_mode from host cpu
* Extend and configure PMP region count
* Fix PPN field of Translation-reponse register
* Use qemu_chr_fe_write_all() in DBCN_CONSOLE_WRITE_BYTE
* Fix fcvt.s.bf16 NaN box checking
* Avoid infinite delay of async xmit function
* Device tree reg cleanups
* Add Kunminghu CPU and platform
* Fix missing exit TB flow for ldff_trans
* Fix migration failure when aia is configured as aplic-imsic
* Fix MEPC/SEPC bit masking for IALIGN
* Add a property to set vill bit on reserved usage of vsetvli instruction
* Add Svrsw60t59b extension support

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCgAdFiEEaukCtqfKh31tZZKWr3yVEwxTgBMFAmhntt4ACgkQr3yVEwxT
# gBMaCQ/9E+LeRY59nz3K3XXUw6XLBfaDECXbKzIn0GM1yXeWTX4dB2h2hoGWdu3R
# CRPxWHECN7CeJhd2J23eLfOi+fTUeppJBeR7TcGyoXVC+y0knZv/clQ3OvMFYcgV
# xjzzu1yipQlXwY+kmDZ6qL5up/Q+faw7tRaePZaJheRGYpVRnjoKUZq5fe4Ug4RU
# Xg6Di86eYyk+Jo0g2exvtzy1rX2eBp7Hz200wWiH5Z1B+3NzgMUHrHuJfNAz8zAt
# n8uvruvaLGGtWcQJauRXlAELR6k9tmkfq1Mbqf3FK6muaQCtFD7PXXnjL/rU/z20
# hhxj0psOhBJLd0W5wQ3vLnDf6Wve9zmUdTR9kI0Kt3xUUdfeBuzKcU06F/G8wEsZ
# 2sIYQqt0mxoJboY2lpje7TO4H9gvAf76WBOV10FV2gWsqWu2rZQ6herdq3YZYkHX
# purUTgyjHn4jl2Y3Kzj0Gq1SHo0yaA/sD6xNR8X+JqljSruDxtOFU7wkKBbewoIg
# OSfwemjRUVsPQZ958042ntwJt81v1604Oky8JSFr5eCFx/aoLJ1vDYh7BKZAogNH
# uB/YigGq9+/MVzqJpZI+kZkd+1nzaizeL0FUPRTq0jFA2u+vc3J3svQ/jNXDH2c+
# 5nGuhbkvT0ptmVMBqFV2vjPh6+ScR8t03wHdQ4PmDoXC3o9zbbU=
# =CfRy
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 04 Jul 2025 07:11:26 EDT
# gpg:                using RSA key 6AE902B6A7CA877D6D659296AF7C95130C538013
# gpg: Good signature from "Alistair Francis <alist...@alistair23.me>" [unknown]
# 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: 6AE9 02B6 A7CA 877D 6D65  9296 AF7C 9513 0C53 8013

* tag 'pull-riscv-to-apply-20250704' of https://github.com/alistair23/qemu: (40 
commits)
  target: riscv: Add Svrsw60t59b extension support
  target/riscv: Add a property to set vill bit on reserved usage of vsetvli 
instruction
  tests/tcg/riscv64: Add test for MEPC bit masking
  target/riscv: Fix MEPC/SEPC bit masking for IALIGN
  migration: Fix migration failure when aia is configured as aplic-imsic
  target/riscv: rvv: Fix missing exit TB flow for ldff_trans
  hw/riscv: Initial support for BOSC's Xiangshan Kunminghu FPGA prototype
  target/riscv: Add BOSC's Xiangshan Kunminghu CPU
  hw/riscv/virt: Use setprop_sized_cells for pcie
  hw/riscv/virt: Use setprop_sized_cells for iommu
  hw/riscv/virt: Use setprop_sized_cells for rtc
  hw/riscv/virt: Use setprop_sized_cells for uart
  hw/riscv/virt: Use setprop_sized_cells for reset
  hw/riscv/virt: Use setprop_sized_cells for virtio
  hw/riscv/virt: Use setprop_sized_cells for plic
  hw/riscv/virt: Use setprop_sized_cells for aclint
  hw/riscv/virt: Use setprop_sized_cells for aplic
  hw/riscv/virt: Use setprop_sized_cells for memory
  hw/riscv/virt: Use setprop_sized_cells for clint
  hw/riscv/virt: Fix clint base address type
  ...

Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com>


Compare: https://github.com/qemu/qemu/compare/c77283dd5d79...e240f6cc2591

To unsubscribe from these emails, change your notification settings at 
https://github.com/qemu/qemu/settings/notifications

Reply via email to