mirror of https://github.com/xemu-project/xemu.git
kvm: move cpu synchronization code
Move the generic cpu_synchronize_ functions to the common hw_accel.h header, in order to prepare for the addition of a second hardware accelerator. Signed-off-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Vincent Palatin <vpalatin@chromium.org> Message-Id: <f5c3cffe8d520011df1c2e5437bb814989b48332.1484045952.git.vpalatin@chromium.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
8c2b8ebf6e
commit
b39466269b
1
cpus.c
1
cpus.c
|
@ -33,6 +33,7 @@
|
|||
#include "sysemu/block-backend.h"
|
||||
#include "exec/gdbstub.h"
|
||||
#include "sysemu/dma.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "qmp-commands.h"
|
||||
#include "exec/exec-all.h"
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
#define MAX_PACKET_LENGTH 4096
|
||||
|
||||
#include "qemu/sockets.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "exec/semihost.h"
|
||||
#include "exec/exec-all.h"
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include "cpu.h"
|
||||
#include "hw/i386/apic_internal.h"
|
||||
#include "hw/pci/msi.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "target/i386/kvm_i386.h"
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
#include "exec/exec-all.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "sysemu/cpus.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "hw/i386/apic_internal.h"
|
||||
#include "hw/sysbus.h"
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
#include "hw/hw.h"
|
||||
#include "hw/isa/isa.h"
|
||||
#include "hw/i386/pc.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "hw/qdev.h"
|
||||
|
||||
//#define VMPORT_DEBUG
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#include "qapi/error.h"
|
||||
#include "hw/hw.h"
|
||||
#include "qemu/log.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "target/ppc/cpu.h"
|
||||
#include "hw/sysbus.h"
|
||||
|
||||
|
|
|
@ -29,9 +29,9 @@
|
|||
|
||||
#include "qemu/osdep.h"
|
||||
#include "hw/hw.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "hw/sysbus.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "e500.h"
|
||||
|
||||
#define MAX_CPUS 32
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
#include "sysemu/device_tree.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/cpus.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "kvm_ppc.h"
|
||||
#include "migration/migration.h"
|
||||
#include "mmu-hash64.h"
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
#include "qemu/osdep.h"
|
||||
#include "qapi/error.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "qemu/log.h"
|
||||
#include "cpu.h"
|
||||
|
@ -9,7 +10,6 @@
|
|||
#include "mmu-hash64.h"
|
||||
#include "cpu-models.h"
|
||||
#include "trace.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "kvm_ppc.h"
|
||||
#include "hw/ppc/spapr_ovec.h"
|
||||
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
#include "s390-pci-bus.h"
|
||||
#include "exec/memory-internal.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
|
||||
/* #define DEBUG_S390PCI_INST */
|
||||
#ifdef DEBUG_S390PCI_INST
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
/*
|
||||
* QEMU Hardware accelertors support
|
||||
*
|
||||
* Copyright 2016 Google, Inc.
|
||||
*
|
||||
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
||||
* See the COPYING file in the top-level directory.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef QEMU_HW_ACCEL_H
|
||||
#define QEMU_HW_ACCEL_H
|
||||
|
||||
#include "qom/cpu.h"
|
||||
#include "sysemu/hax.h"
|
||||
#include "sysemu/kvm.h"
|
||||
|
||||
static inline void cpu_synchronize_state(CPUState *cpu)
|
||||
{
|
||||
if (kvm_enabled()) {
|
||||
kvm_cpu_synchronize_state(cpu);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void cpu_synchronize_post_reset(CPUState *cpu)
|
||||
{
|
||||
if (kvm_enabled()) {
|
||||
kvm_cpu_synchronize_post_reset(cpu);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void cpu_synchronize_post_init(CPUState *cpu)
|
||||
{
|
||||
if (kvm_enabled()) {
|
||||
kvm_cpu_synchronize_post_init(cpu);
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* QEMU_HW_ACCEL_H */
|
|
@ -461,29 +461,6 @@ void kvm_cpu_synchronize_state(CPUState *cpu);
|
|||
void kvm_cpu_synchronize_post_reset(CPUState *cpu);
|
||||
void kvm_cpu_synchronize_post_init(CPUState *cpu);
|
||||
|
||||
/* generic hooks - to be moved/refactored once there are more users */
|
||||
|
||||
static inline void cpu_synchronize_state(CPUState *cpu)
|
||||
{
|
||||
if (kvm_enabled()) {
|
||||
kvm_cpu_synchronize_state(cpu);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void cpu_synchronize_post_reset(CPUState *cpu)
|
||||
{
|
||||
if (kvm_enabled()) {
|
||||
kvm_cpu_synchronize_post_reset(cpu);
|
||||
}
|
||||
}
|
||||
|
||||
static inline void cpu_synchronize_post_init(CPUState *cpu)
|
||||
{
|
||||
if (kvm_enabled()) {
|
||||
kvm_cpu_synchronize_post_init(cpu);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* kvm_irqchip_add_msi_route - Add MSI route for specific vector
|
||||
* @s: KVM state
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
#include "sysemu/balloon.h"
|
||||
#include "qemu/timer.h"
|
||||
#include "migration/migration.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "qemu/acl.h"
|
||||
#include "sysemu/tpm.h"
|
||||
#include "qapi/qmp/qerror.h"
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
#include "qapi/error.h"
|
||||
#include "qemu-common.h"
|
||||
#include "qom/cpu.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "qemu/notify.h"
|
||||
#include "qemu/log.h"
|
||||
#include "exec/log.h"
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#endif
|
||||
#include "hw/arm/arm.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "kvm_arm.h"
|
||||
|
||||
static void arm_cpu_set_pc(CPUState *cs, vaddr value)
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#include "kvm_i386.h"
|
||||
#ifndef CONFIG_USER_ONLY
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "monitor/monitor.h"
|
||||
#include "hw/i386/apic_internal.h"
|
||||
#endif
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
#include "qemu-common.h"
|
||||
#include "cpu.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "sysemu/kvm_int.h"
|
||||
#include "kvm_i386.h"
|
||||
#include "hyperv.h"
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
#include "cpu.h"
|
||||
#include "qemu/timer.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "sysemu/numa.h"
|
||||
#include "kvm_ppc.h"
|
||||
#include "sysemu/cpus.h"
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#include "exec/exec-all.h"
|
||||
#include "exec/helper-proto.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "kvm_ppc.h"
|
||||
#include "mmu-hash64.h"
|
||||
#include "exec/log.h"
|
||||
|
|
|
@ -21,10 +21,10 @@
|
|||
#include "qemu/osdep.h"
|
||||
#include "disas/bfd.h"
|
||||
#include "exec/gdbstub.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "kvm_ppc.h"
|
||||
#include "sysemu/arch_init.h"
|
||||
#include "sysemu/cpus.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
#include "cpu-models.h"
|
||||
#include "mmu-hash32.h"
|
||||
#include "mmu-hash64.h"
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
#include "exec/exec-all.h"
|
||||
#include "exec/gdbstub.h"
|
||||
#include "qemu/bitops.h"
|
||||
#include "sysemu/hw_accel.h"
|
||||
|
||||
int s390_cpu_gdb_read_register(CPUState *cs, uint8_t *mem_buf, int n)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue