Skip to content

Commit 989dd90

Browse files
committed
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) <f4bug@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 <stefanha@redhat.com>
2 parents 563ac3d + c8beb90 commit 989dd90

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+539
-523
lines changed

MAINTAINERS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,7 @@ Guest CPU Cores (other accelerators)
495495
Overall
496496
M: Richard Henderson <richard.henderson@linaro.org>
497497
R: Paolo Bonzini <pbonzini@redhat.com>
498+
R: Philippe Mathieu-Daudé <philmd@linaro.org>
498499
S: Maintained
499500
F: include/exec/cpu*.h
500501
F: include/exec/target_long.h
@@ -503,6 +504,7 @@ F: include/system/accel-*.h
503504
F: include/system/cpus.h
504505
F: include/accel/accel-cpu*.h
505506
F: accel/accel-*.?
507+
F: accel/dummy-cpus.?
506508
F: accel/Makefile.objs
507509
F: accel/stubs/Makefile.objs
508510
F: cpu-common.c
@@ -540,6 +542,7 @@ WHPX CPUs
540542
M: Sunil Muthuswamy <sunilmut@microsoft.com>
541543
S: Supported
542544
F: target/i386/whpx/
545+
F: accel/stubs/whpx-stub.c
543546
F: include/system/whpx.h
544547

545548
X86 Instruction Emulator
@@ -586,6 +589,7 @@ NetBSD Virtual Machine Monitor (NVMM) CPU support
586589
M: Reinoud Zandijk <reinoud@netbsd.org>
587590
S: Maintained
588591
F: include/system/nvmm.h
592+
F: accel/stubs/nvmm-stub.c
589593
F: target/i386/nvmm/
590594

591595
Hosts

accel/accel-common.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ int accel_supported_gdbstub_sstep_flags(void)
124124
AccelState *accel = current_accel();
125125
AccelClass *acc = ACCEL_GET_CLASS(accel);
126126
if (acc->gdbstub_supported_sstep_flags) {
127-
return acc->gdbstub_supported_sstep_flags();
127+
return acc->gdbstub_supported_sstep_flags(accel);
128128
}
129129
return 0;
130130
}

accel/accel-system.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ int accel_init_machine(AccelState *accel, MachineState *ms)
3737
int ret;
3838
ms->accelerator = accel;
3939
*(acc->allowed) = true;
40-
ret = acc->init_machine(ms);
40+
ret = acc->init_machine(accel, ms);
4141
if (ret < 0) {
4242
ms->accelerator = NULL;
4343
*(acc->allowed) = false;
@@ -58,7 +58,7 @@ void accel_setup_post(MachineState *ms)
5858
AccelState *accel = ms->accelerator;
5959
AccelClass *acc = ACCEL_GET_CLASS(accel);
6060
if (acc->setup_post) {
61-
acc->setup_post(ms, accel);
61+
acc->setup_post(accel);
6262
}
6363
}
6464

@@ -85,8 +85,9 @@ void accel_init_ops_interfaces(AccelClass *ac)
8585
* non-NULL create_vcpu_thread operation.
8686
*/
8787
ops = ACCEL_OPS_CLASS(oc);
88+
ac->ops = ops;
8889
if (ops->ops_init) {
89-
ops->ops_init(ops);
90+
ops->ops_init(ac);
9091
}
9192
cpus_register_accel(ops);
9293
}

accel/dummy-cpus.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
#include "qemu/guest-random.h"
1818
#include "qemu/main-loop.h"
1919
#include "hw/core/cpu.h"
20+
#include "accel/dummy-cpus.h"
2021

2122
static void *dummy_cpu_thread_fn(void *arg)
2223
{

accel/dummy-cpus.h

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/*
2+
* Dummy cpu thread code
3+
*
4+
* Copyright IBM, Corp. 2011
5+
*
6+
* SPDX-License-Identifier: GPL-2.0-or-later
7+
*/
8+
9+
#ifndef ACCEL_DUMMY_CPUS_H
10+
#define ACCEL_DUMMY_CPUS_H
11+
12+
void dummy_start_vcpu_thread(CPUState *cpu);
13+
14+
#endif

0 commit comments

Comments
 (0)