diff options
author | Paolo Bonzini | 2017-02-08 12:48:54 +0100 |
---|---|---|
committer | Paolo Bonzini | 2017-03-03 16:40:02 +0100 |
commit | 2ae41db262e02743b27719fe085e749d957613c0 (patch) | |
tree | 2f250d65d9a20985f56a574f7c5f4ee81e48437b /include/sysemu | |
parent | KVM: remove kvm_arch_on_sigbus (diff) | |
download | qemu-2ae41db262e02743b27719fe085e749d957613c0.tar.gz qemu-2ae41db262e02743b27719fe085e749d957613c0.tar.xz qemu-2ae41db262e02743b27719fe085e749d957613c0.zip |
KVM: do not use sigtimedwait to catch SIGBUS
Call kvm_on_sigbus_vcpu asynchronously from the VCPU thread.
Information for the SIGBUS can be stored in thread-local variables
and processed later in kvm_cpu_exec.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'include/sysemu')
-rw-r--r-- | include/sysemu/kvm.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/sysemu/kvm.h b/include/sysemu/kvm.h index 6ecb61cdef..a1b019da6f 100644 --- a/include/sysemu/kvm.h +++ b/include/sysemu/kvm.h @@ -357,7 +357,10 @@ bool kvm_vcpu_id_is_valid(int vcpu_id); /* Returns VCPU ID to be used on KVM_CREATE_VCPU ioctl() */ unsigned long kvm_arch_vcpu_id(CPUState *cpu); -int kvm_arch_on_sigbus_vcpu(CPUState *cpu, int code, void *addr); +#ifdef TARGET_I386 +#define KVM_HAVE_MCE_INJECTION 1 +void kvm_arch_on_sigbus_vcpu(CPUState *cpu, int code, void *addr); +#endif void kvm_arch_init_irq_routing(KVMState *s); |