[PULL 00/32] Accelerator patches for 2026-07-06

Philippe Mathieu-Daudé posted 32 patches 2 weeks, 5 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260706134527.84808-1-philmd@oss.qualcomm.com
Maintainers: Richard Henderson <richard.henderson@linaro.org>, Paolo Bonzini <pbonzini@redhat.com>, "Philippe Mathieu-Daudé" <philmd@mailo.com>, Roman Bolshakov <rbolshakov@ddn.com>, Phil Dennis-Jordan <phil@philjordan.eu>, Magnus Kulke <magnuskulke@linux.microsoft.com>, Wei Liu <wei.liu@kernel.org>, "Doru Blânzeanu" <dblanzeanu@linux.microsoft.com>, Pedro Barbuda <pbarbuda@microsoft.com>, Mohamed Mediouni <mohamed@unpredictable.fr>, "Alex Bennée" <alex.bennee@linaro.org>, Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>, Zhao Liu <zhao1.liu@intel.com>, Laurent Vivier <laurent@vivier.eu>, Helge Deller <deller@gmx.de>, Alexander Graf <agraf@csgraf.de>, Peter Maydell <peter.maydell@linaro.org>, Marcelo Tosatti <mtosatti@redhat.com>, Song Gao <gaosong@loongson.cn>, "Edgar E. Iglesias" <edgar.iglesias@gmail.com>, Nicholas Piggin <npiggin@gmail.com>, Chinmay Rath <rathc@linux.ibm.com>, Glenn Miles <milesg@linux.ibm.com>, Harsh Prateek Bora <harshpb@linux.ibm.com>, Palmer Dabbelt <palmer@dabbelt.com>, Alistair Francis <alistair.francis@wdc.com>, Weiwei Li <liwei1518@gmail.com>, Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>, Liu Zhiwei <zhiwei_liu@linux.alibaba.com>, Chao Liu <chao.liu.zevorn@gmail.com>, Halil Pasic <pasic@linux.ibm.com>, Christian Borntraeger <borntraeger@linux.ibm.com>, Eric Farman <farman@linux.ibm.com>, Matthew Rosato <mjrosato@linux.ibm.com>, Cornelia Huck <cohuck@redhat.com>, Ilya Leoshkevich <iii@linux.ibm.com>, David Hildenbrand <david@kernel.org>, Stefan Hajnoczi <stefanha@redhat.com>
docs/system/gdb.rst                |  2 +-
accel/kvm/kvm-cpus.h               | 12 ++++---
accel/tcg/system-page-protection.h | 17 ++++++++++
gdbstub/internals.h                | 12 ++++---
include/accel/accel-cpu-ops.h      | 10 +++---
include/accel/accel-ops.h          |  5 ++-
include/accel/tcg/cpu-ops.h        |  5 ++-
include/exec/breakpoint.h          | 14 ++++++++
include/exec/cputlb.h              |  8 ++---
include/gdbstub/enums.h            | 12 ++++---
include/hw/core/cpu.h              | 49 +++++++++-------------------
include/qemu/accel.h               | 13 +++++---
include/system/hvf_int.h           | 14 ++++----
include/system/kvm.h               |  9 ++++--
include/system/mshv_int.h          |  1 -
include/system/whpx-all.h          |  3 --
target/arm/internals.h             |  5 +--
accel/accel-common.c               | 15 +++------
accel/hvf/hvf-accel-ops.c          | 23 +++++++------
accel/hvf/hvf-all.c                |  8 ++---
accel/kvm/kvm-accel-ops.c          |  7 ++--
accel/kvm/kvm-all.c                | 52 ++++++++----------------------
accel/mshv/mshv-all.c              | 22 ++++++-------
accel/tcg/cpu-exec-common.c        |  2 +-
accel/tcg/cpu-exec.c               | 12 +++----
accel/tcg/cputlb.c                 |  3 +-
accel/tcg/tb-maint.c               |  1 +
accel/tcg/tcg-accel-ops-rr.c       |  2 +-
accel/tcg/tcg-accel-ops.c          | 22 ++++++-------
accel/tcg/tcg-all.c                | 30 ++++++++---------
accel/tcg/translate-all.c          |  3 +-
accel/whpx/whpx-accel-ops.c        |  6 ----
cpu-common.c                       | 15 +++++++++
cpu-target.c                       | 10 +++---
gdbstub/gdbstub.c                  | 18 ++++++-----
gdbstub/system.c                   | 37 ++++++++-------------
gdbstub/user.c                     | 20 +++---------
linux-user/riscv/cpu_loop.c        |  2 +-
linux-user/s390x/cpu_loop.c        |  2 +-
stubs/replay-mode.c                |  2 +-
system/cpus.c                      |  2 +-
target/arm/hvf/hvf.c               | 27 +++++++---------
target/arm/hyp_gdbstub.c           |  8 ++---
target/arm/kvm.c                   | 14 ++++----
target/arm/tcg/debug.c             | 40 ++++++++++-------------
target/arm/whpx/whpx-all.c         |  5 ---
target/i386/hvf/hvf.c              | 13 +++-----
target/i386/kvm/kvm.c              | 14 ++++----
target/i386/machine.c              |  1 -
target/i386/mshv/mshv-cpu.c        |  6 ++--
target/i386/whpx/whpx-all.c        | 13 +++-----
target/loongarch/kvm/kvm.c         | 10 +++---
target/microblaze/translate.c      |  2 +-
target/ppc/cpu.c                   |  2 ++
target/ppc/kvm.c                   | 14 ++++----
target/ppc/translate.c             | 16 ++++-----
target/riscv/kvm/kvm-cpu.c         |  8 +++--
target/s390x/kvm/kvm.c             | 10 +++---
trace-events                       |  2 +-
59 files changed, 338 insertions(+), 374 deletions(-)
create mode 100644 accel/tcg/system-page-protection.h
[PULL 00/32] Accelerator patches for 2026-07-06
Posted by Philippe Mathieu-Daudé 2 weeks, 5 days ago
The following changes since commit 4ee536fac748b70e6f3d8568ddd20cfbaa9cf7bf:

  Merge tag 'firmware-20260704-pull-request' of https://gitlab.com/kraxel/qemu into staging (2026-07-05 08:42:47 +0200)

are available in the Git repository at:

  https://github.com/philmd/qemu.git tags/accel-20260706

for you to fetch changes up to c0df53752c86e5f51e12e7b99501b6f4d2e52c01:

  cpu: Only check SSTEP_ENABLE flag in cpu_single_stepping() (2026-07-06 15:42:18 +0200)

Ignoring following checkpatch.pl warnings:

  WARNING: Saw acceptable license 'LGPL-2.1-or-later' ... Please explain the license
  WARNING: added, moved or deleted file(s), does MAINTAINERS need updating?
    accel/tcg/system-page-protection.h
  WARNING: line over 80 characters
  #71: FILE: gdbstub/gdbstub.c:75:
  +    gdbserver_state.accel_config.sstep_flags = accel_supported_gdbstub_sstep_flags();
  WARNING: line over 80 characters
  #582: FILE: target/i386/kvm/kvm.c:6167:
  +static int find_hw_breakpoint(target_ulong addr, int len, GdbBreakpointType type)

----------------------------------------------------------------
Accelerators patches queue

- Various cleanups around debugging APIs
- Correctly check singlestep flag enabled in CPUState
- Fix possible memory corruption with MSHV (CID 1660876)
----------------------------------------------------------------

Magnus Kulke (1):
  accel/mshv: Fix pointer to proc feature bitfield

Philippe Mathieu-Daudé (30):
  cpu: Constify CPUState::cc (cached CPUClass pointer)
  target/i386: Remove duplicate tlb_flush() call in cpu_post_load()
  accel/tcg: Restrict tlb_protect/unprotect_code() to TCG
  accel/hvf: Remove left-over comment
  accel/mshv: Replace @dirty field by generic CPUState::vcpu_dirty field
  gdbstub: Add trace event for STEP packet handler
  gdbstub: Only return E22 when reverse GDB is not supported
  accel/whpx: Implement missing
    AccelClass::gdbstub_supported_sstep_flags
  accel/kvm: Always define AccelOpsClass::supports_guest_debug
  accel/kvm: Simplify kvm_init() w.r.t. TARGET_KVM_HAVE_GUEST_DEBUG
  accel/kvm: Hold have_guest_debug in KVMState
  gdbstub: Reduce gdb_supports_guest_debug() scope
  gdbstub: Move supported_sstep_flags in AccelGdbConfig structure
  accel: Have each implementation return their AccelGdbConfig
  gdbstub: Make default replay_mode value explicit in stubs
  accel: Hold @can_reverse information in AccelGdbConfig
  accel: Remove AccelOpsClass::supports_guest_debug
  cpu: Move BREAKPOINT definitions to 'exec/breakpoint.h'
  accel: Remove unnecessary 'inline' qualifier in remove_all_breakpoints
  gdbstub/user: Directly call gdb_breakpoint_remove_all() in user mode
  gdbstub: Reduce @type variable scope
  gdbstub: Introduce GdbBreakpointType enumerator
  accel: Use GdbBreakpointType enum
  target/arm: Inline check_watchpoints() in arm_debug_check_watchpoint()
  target/ppc: Ensure TCG is used in ppc_update_daw()
  accel/tcg: Improve docstrings around TCGCPUOps::*watchpoint* handlers
  cpu: Better name cpu_single_step() trace event
  cpu: Introduce cpu_single_stepping() helper
  cpu: Rename CPUState @singlestep_enabled -> @singlestep_flags
  cpu: Only check SSTEP_ENABLE flag in cpu_single_stepping()

Richard Henderson (1):
  cpu: Move cpu_breakpoint_test out of line

 docs/system/gdb.rst                |  2 +-
 accel/kvm/kvm-cpus.h               | 12 ++++---
 accel/tcg/system-page-protection.h | 17 ++++++++++
 gdbstub/internals.h                | 12 ++++---
 include/accel/accel-cpu-ops.h      | 10 +++---
 include/accel/accel-ops.h          |  5 ++-
 include/accel/tcg/cpu-ops.h        |  5 ++-
 include/exec/breakpoint.h          | 14 ++++++++
 include/exec/cputlb.h              |  8 ++---
 include/gdbstub/enums.h            | 12 ++++---
 include/hw/core/cpu.h              | 49 +++++++++-------------------
 include/qemu/accel.h               | 13 +++++---
 include/system/hvf_int.h           | 14 ++++----
 include/system/kvm.h               |  9 ++++--
 include/system/mshv_int.h          |  1 -
 include/system/whpx-all.h          |  3 --
 target/arm/internals.h             |  5 +--
 accel/accel-common.c               | 15 +++------
 accel/hvf/hvf-accel-ops.c          | 23 +++++++------
 accel/hvf/hvf-all.c                |  8 ++---
 accel/kvm/kvm-accel-ops.c          |  7 ++--
 accel/kvm/kvm-all.c                | 52 ++++++++----------------------
 accel/mshv/mshv-all.c              | 22 ++++++-------
 accel/tcg/cpu-exec-common.c        |  2 +-
 accel/tcg/cpu-exec.c               | 12 +++----
 accel/tcg/cputlb.c                 |  3 +-
 accel/tcg/tb-maint.c               |  1 +
 accel/tcg/tcg-accel-ops-rr.c       |  2 +-
 accel/tcg/tcg-accel-ops.c          | 22 ++++++-------
 accel/tcg/tcg-all.c                | 30 ++++++++---------
 accel/tcg/translate-all.c          |  3 +-
 accel/whpx/whpx-accel-ops.c        |  6 ----
 cpu-common.c                       | 15 +++++++++
 cpu-target.c                       | 10 +++---
 gdbstub/gdbstub.c                  | 18 ++++++-----
 gdbstub/system.c                   | 37 ++++++++-------------
 gdbstub/user.c                     | 20 +++---------
 linux-user/riscv/cpu_loop.c        |  2 +-
 linux-user/s390x/cpu_loop.c        |  2 +-
 stubs/replay-mode.c                |  2 +-
 system/cpus.c                      |  2 +-
 target/arm/hvf/hvf.c               | 27 +++++++---------
 target/arm/hyp_gdbstub.c           |  8 ++---
 target/arm/kvm.c                   | 14 ++++----
 target/arm/tcg/debug.c             | 40 ++++++++++-------------
 target/arm/whpx/whpx-all.c         |  5 ---
 target/i386/hvf/hvf.c              | 13 +++-----
 target/i386/kvm/kvm.c              | 14 ++++----
 target/i386/machine.c              |  1 -
 target/i386/mshv/mshv-cpu.c        |  6 ++--
 target/i386/whpx/whpx-all.c        | 13 +++-----
 target/loongarch/kvm/kvm.c         | 10 +++---
 target/microblaze/translate.c      |  2 +-
 target/ppc/cpu.c                   |  2 ++
 target/ppc/kvm.c                   | 14 ++++----
 target/ppc/translate.c             | 16 ++++-----
 target/riscv/kvm/kvm-cpu.c         |  8 +++--
 target/s390x/kvm/kvm.c             | 10 +++---
 trace-events                       |  2 +-
 59 files changed, 338 insertions(+), 374 deletions(-)
 create mode 100644 accel/tcg/system-page-protection.h

-- 
2.53.0


Re: [PULL 00/32] Accelerator patches for 2026-07-06
Posted by Stefan Hajnoczi 2 weeks, 5 days ago
Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/11.1 for any user-visible changes.