]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
Merge tag 'accel-20250715' of https://github.com/philmd/qemu into staging
authorStefan Hajnoczi <stefanha@redhat.com>
Wed, 16 Jul 2025 11:13:40 +0000 (07:13 -0400)
committerStefan Hajnoczi <stefanha@redhat.com>
Wed, 16 Jul 2025 11:13:40 +0000 (07:13 -0400)
Accelerators patches

- Unify x86/arm hw/xen/arch_hvm.h header
- Move non-system-specific 'accel/accel-ops.h' and 'accel-cpu-ops.h' to accel/
- Move KVM definitions qapi/accelerator.json
- Add @qom-type field to CpuInfoFast QAPI structure
- Display CPU model name in 'info cpus' HMP command
- Introduce @x-accel-stats QMP command
- Add 'info accel' on HMP
- Improve qemu_add_vm_change_state_handler*() docstring
- Extract TCG statistic related code to tcg-stats.c
- Implement AccelClass::get_[vcpu]_stats() handlers for TCG and HVF
- Do not dump NaN in TCG statistics
- Revert incomplete "accel/tcg: Unregister the RCU before exiting RR thread"

 # -----BEGIN PGP SIGNATURE-----
 #
 # iQIzBAABCAAdFiEE+qvnXhKRciHc/Wuy4+MsLN6twN4FAmh2r4UACgkQ4+MsLN6t
 # wN5i6xAAkOvwFh1GmsPUdz5RxzsWoIUDvyENg6E8Axwe5tSEMRFiPjabbTQJomQg
 # GZt75XIS24LZFZ+hvqrLSA+dFgXTgWv08ZE81EjwjmAMBlLCOPhCgeN6C1p8100Y
 # scSvRJbP9k9lpA5K7et/1X4AkK2cZyh+LGJgCjr2Al2mbERpPueDF8fxqeohFvXQ
 # nTSks4XlA0yQ06+9r49aQAiuXvgg9lDT1wIglD2HEV7vOVs/ud+yyL8+z5YMeFzx
 # pSIc6wDu4PqdA46w4MZs90uTy7S/PMvBiYDEiV3tKzg0MLttvFGlT58/YjVtguTP
 # mNkfwIEwQtDQzoxsFIJO7yBTlTRBs95V4aIVk3pB+Gb/bideRPIkeVQvgMSEBKj7
 # N0pEXWOxfB9iIWO6b1utYpQ4uxeDOU/8DPUCit1IBbNgKTaJkJb77fboYk7NaB0K
 # KEtObAk6jMatB/xr+vUFWc4sMk9wlm72w8wcQzgKZ0xV2U3d1/Y/9nS4GvI510ev
 # TRQ3mKj7N319uCeId1czF6W8rillCJ2u8ZK53u+Nfp7R3PbsRSMc6IDJ1UdDUlyR
 # HFcWHxbcbEGhe8SnFGab4Qd6fWChcn2EaEoAJJz+Rqv0k3zcwqccNM5waCABAjTE
 # 0S22JIHePJKcpkMLGq3EOUAQuu+8Zsol7gPCLxSAMclVqPTl9ck=
 # =rAav
 # -----END PGP SIGNATURE-----
 # gpg: Signature made Tue 15 Jul 2025 15:44:05 EDT
 # gpg:                using RSA key FAABE75E12917221DCFD6BB2E3E32C2CDEADC0DE
 # gpg: Good signature from "Philippe Mathieu-Daudé (F4BUG) <f4bug@amsat.org>" [full]
 # Primary key fingerprint: FAAB E75E 1291 7221 DCFD  6BB2 E3E3 2C2C DEAD C0DE

* tag 'accel-20250715' of https://github.com/philmd/qemu:
  system/runstate: Document qemu_add_vm_change_state_handler_prio* in hdr
  system/runstate: Document qemu_add_vm_change_state_handler()
  accel/hvf: Implement AccelClass::get_vcpu_stats() handler
  accel/tcg: Implement AccelClass::get_stats() handler
  accel/tcg: Propagate AccelState to dump_accel_info()
  accel/system: Add 'info accel' on human monitor
  accel/system: Introduce @x-accel-stats QMP command
  accel/tcg: Extract statistic related code to tcg-stats.c
  Revert "accel/tcg: Unregister the RCU before exiting RR thread"
  accel: Extract AccelClass definition to 'accel/accel-ops.h'
  accel: Rename 'system/accel-ops.h' -> 'accel/accel-cpu-ops.h'
  accel/tcg: Do not dump NaN statistics
  hw/core/machine: Display CPU model name in 'info cpus' command
  qapi/machine: Add @qom-type field to CpuInfoFast structure
  qapi/accel: Move definitions related to accelerators in their own file
  hw/arm/xen-pvh: Remove unnecessary 'hw/xen/arch_hvm.h' header
  hw/xen/arch_hvm: Unify x86 and ARM variants

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Conflicts:
  qapi/machine.json
  Commit 0462da9d6b19 ("qapi: remove trivial "Returns:" sections")
  removed trivial "Returns:". This caused a conflict with the move from
  machine.json to accelerator.json.

12 files changed:
1  2 
MAINTAINERS
accel/kvm/kvm-all.c
cpu-target.c
hw/core/machine-qmp-cmds.c
include/system/runstate.h
qapi/accelerator.json
qapi/machine.json
qapi/qapi-schema.json
system/memory.c
system/runstate.c
target/i386/nvmm/nvmm-all.c
target/i386/whpx/whpx-all.c

diff --cc MAINTAINERS
Simple merge
Simple merge
diff --cc cpu-target.c
index 20db5ff3108fc2346eb74ee2f5ff8029af025901,2049eb1d0f697a88c0f7c0403a8282de86ccae21..772e35495b857c13bbb7099ab47ee6f83387d43d
  
  #include "qemu/osdep.h"
  #include "cpu.h"
- #include "system/accel-ops.h"
+ #include "accel/accel-cpu-ops.h"
  #include "system/cpus.h"
  #include "exec/cpu-common.h"
 -#include "exec/tswap.h"
  #include "exec/replay-core.h"
  #include "exec/log.h"
  #include "hw/core/cpu.h"
Simple merge
Simple merge
index 0000000000000000000000000000000000000000,6029e7307a70e0c90f5f6c0346b1e276b15ffeec..28d5ff4c493a1365769e03eaabb7aea24702a9ca
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,56 +1,54 @@@
 -# Returns: @KvmInfo
 -#
+ # -*- Mode: Python -*-
+ # vim: filetype=python
+ #
+ # SPDX-License-Identifier: GPL-2.0-or-later
+ ##
+ # = Accelerators
+ ##
+ { 'include': 'common.json' }
+ ##
+ # @KvmInfo:
+ #
+ # Information about support for KVM acceleration
+ #
+ # @enabled: true if KVM acceleration is active
+ #
+ # @present: true if KVM acceleration is built into this executable
+ #
+ # Since: 0.14
+ ##
+ { 'struct': 'KvmInfo', 'data': {'enabled': 'bool', 'present': 'bool'} }
+ ##
+ # @query-kvm:
+ #
+ # Return information about KVM acceleration
+ #
+ # Since: 0.14
+ #
+ # .. qmp-example::
+ #
+ #     -> { "execute": "query-kvm" }
+ #     <- { "return": { "enabled": true, "present": true } }
+ ##
+ { 'command': 'query-kvm', 'returns': 'KvmInfo' }
+ ##
+ # @x-accel-stats:
+ #
+ # Query accelerator statistics
+ #
+ # Features:
+ #
+ # @unstable: This command is meant for debugging.
+ #
+ # Returns: accelerator statistics
+ #
+ # Since: 10.1
+ ##
+ { 'command': 'x-accel-stats',
+   'returns': 'HumanReadableText',
+   'features': [ 'unstable' ] }
Simple merge
Simple merge
diff --cc system/memory.c
Simple merge
Simple merge
Simple merge
Simple merge