diff options
Diffstat (limited to 'arch/x86/include/asm/kvm.h')
| -rw-r--r-- | arch/x86/include/asm/kvm.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/arch/x86/include/asm/kvm.h b/arch/x86/include/asm/kvm.h index 886c9402ec45..dc3f6cf11704 100644 --- a/arch/x86/include/asm/kvm.h +++ b/arch/x86/include/asm/kvm.h | |||
| @@ -15,6 +15,7 @@ | |||
| 15 | #define __KVM_HAVE_DEVICE_ASSIGNMENT | 15 | #define __KVM_HAVE_DEVICE_ASSIGNMENT |
| 16 | #define __KVM_HAVE_MSI | 16 | #define __KVM_HAVE_MSI |
| 17 | #define __KVM_HAVE_USER_NMI | 17 | #define __KVM_HAVE_USER_NMI |
| 18 | #define __KVM_HAVE_GUEST_DEBUG | ||
| 18 | 19 | ||
| 19 | /* Architectural interrupt line count. */ | 20 | /* Architectural interrupt line count. */ |
| 20 | #define KVM_NR_INTERRUPTS 256 | 21 | #define KVM_NR_INTERRUPTS 256 |
| @@ -212,7 +213,30 @@ struct kvm_pit_channel_state { | |||
| 212 | __s64 count_load_time; | 213 | __s64 count_load_time; |
| 213 | }; | 214 | }; |
| 214 | 215 | ||
| 216 | struct kvm_debug_exit_arch { | ||
| 217 | __u32 exception; | ||
| 218 | __u32 pad; | ||
| 219 | __u64 pc; | ||
| 220 | __u64 dr6; | ||
| 221 | __u64 dr7; | ||
| 222 | }; | ||
| 223 | |||
| 224 | #define KVM_GUESTDBG_USE_SW_BP 0x00010000 | ||
| 225 | #define KVM_GUESTDBG_USE_HW_BP 0x00020000 | ||
| 226 | #define KVM_GUESTDBG_INJECT_DB 0x00040000 | ||
| 227 | #define KVM_GUESTDBG_INJECT_BP 0x00080000 | ||
| 228 | |||
| 229 | /* for KVM_SET_GUEST_DEBUG */ | ||
| 230 | struct kvm_guest_debug_arch { | ||
| 231 | __u64 debugreg[8]; | ||
| 232 | }; | ||
| 233 | |||
| 215 | struct kvm_pit_state { | 234 | struct kvm_pit_state { |
| 216 | struct kvm_pit_channel_state channels[3]; | 235 | struct kvm_pit_channel_state channels[3]; |
| 217 | }; | 236 | }; |
| 237 | |||
| 238 | struct kvm_reinject_control { | ||
| 239 | __u8 pit_reinject; | ||
| 240 | __u8 reserved[31]; | ||
| 241 | }; | ||
| 218 | #endif /* _ASM_X86_KVM_H */ | 242 | #endif /* _ASM_X86_KVM_H */ |
