kvm: Move kvm_allows_irq0_override() to target-i386, fix return type
kvm_allows_irq0_override() is a totally x86 specific concept: move it to the target-specific source file where it belongs. This means we need a new header file for the prototype: kvm_i386.h, in line with the existing kvm_ppc.h. While we are moving it, fix the return type to be 'bool' rather than 'int'. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
parent
3889c3fab1
commit
1d31f66bbc
1
hw/pc.c
1
hw/pc.c
@ -42,6 +42,7 @@
|
||||
#include "sysbus.h"
|
||||
#include "sysemu.h"
|
||||
#include "kvm.h"
|
||||
#include "kvm_i386.h"
|
||||
#include "xen.h"
|
||||
#include "blockdev.h"
|
||||
#include "hw/block-common.h"
|
||||
|
@ -1701,11 +1701,6 @@ int kvm_has_gsi_routing(void)
|
||||
#endif
|
||||
}
|
||||
|
||||
int kvm_allows_irq0_override(void)
|
||||
{
|
||||
return !kvm_irqchip_in_kernel() || kvm_has_gsi_routing();
|
||||
}
|
||||
|
||||
void *kvm_vmalloc(ram_addr_t size)
|
||||
{
|
||||
#ifdef TARGET_S390X
|
||||
|
@ -72,11 +72,6 @@ int kvm_has_many_ioeventfds(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int kvm_allows_irq0_override(void)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
int kvm_has_pit_state2(void)
|
||||
{
|
||||
return 0;
|
||||
|
2
kvm.h
2
kvm.h
@ -75,8 +75,6 @@ int kvm_has_pit_state2(void);
|
||||
int kvm_has_many_ioeventfds(void);
|
||||
int kvm_has_gsi_routing(void);
|
||||
|
||||
int kvm_allows_irq0_override(void);
|
||||
|
||||
#ifdef NEED_CPU_H
|
||||
int kvm_init_vcpu(CPUArchState *env);
|
||||
|
||||
|
@ -3,6 +3,7 @@ obj-y += excp_helper.o fpu_helper.o cc_helper.o int_helper.o svm_helper.o
|
||||
obj-y += smm_helper.o misc_helper.o mem_helper.o seg_helper.o
|
||||
obj-$(CONFIG_SOFTMMU) += machine.o arch_memory_mapping.o arch_dump.o
|
||||
obj-$(CONFIG_KVM) += kvm.o hyperv.o
|
||||
obj-$(CONFIG_NO_KVM) += kvm-stub.o
|
||||
obj-$(CONFIG_LINUX_USER) += ioport-user.o
|
||||
obj-$(CONFIG_BSD_USER) += ioport-user.o
|
||||
|
||||
|
18
target-i386/kvm-stub.c
Normal file
18
target-i386/kvm-stub.c
Normal file
@ -0,0 +1,18 @@
|
||||
/*
|
||||
* QEMU KVM x86 specific function stubs
|
||||
*
|
||||
* Copyright Linaro Limited 2012
|
||||
*
|
||||
* Author: Peter Maydell <peter.maydell@linaro.org>
|
||||
*
|
||||
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
||||
* See the COPYING file in the top-level directory.
|
||||
*
|
||||
*/
|
||||
#include "qemu-common.h"
|
||||
#include "kvm_i386.h"
|
||||
|
||||
bool kvm_allows_irq0_override(void)
|
||||
{
|
||||
return 1;
|
||||
}
|
@ -23,6 +23,7 @@
|
||||
#include "qemu-common.h"
|
||||
#include "sysemu.h"
|
||||
#include "kvm.h"
|
||||
#include "kvm_i386.h"
|
||||
#include "cpu.h"
|
||||
#include "gdbstub.h"
|
||||
#include "host-utils.h"
|
||||
@ -65,6 +66,11 @@ static bool has_msr_async_pf_en;
|
||||
static bool has_msr_misc_enable;
|
||||
static int lm_capable_kernel;
|
||||
|
||||
bool kvm_allows_irq0_override(void)
|
||||
{
|
||||
return !kvm_irqchip_in_kernel() || kvm_has_gsi_routing();
|
||||
}
|
||||
|
||||
static struct kvm_cpuid2 *try_get_cpuid(KVMState *s, int max)
|
||||
{
|
||||
struct kvm_cpuid2 *cpuid;
|
||||
|
16
target-i386/kvm_i386.h
Normal file
16
target-i386/kvm_i386.h
Normal file
@ -0,0 +1,16 @@
|
||||
/*
|
||||
* QEMU KVM support -- x86 specific functions.
|
||||
*
|
||||
* Copyright (c) 2012 Linaro Limited
|
||||
*
|
||||
* 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_KVM_I386_H
|
||||
#define QEMU_KVM_I386_H
|
||||
|
||||
bool kvm_allows_irq0_override(void);
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user