kvm.h (90de4a1875180f8347c075319af2cce586c96ab6) kvm.h (f077825a8758d79838a757dafb79adcdd047ef3a)
1#ifndef _ASM_X86_KVM_H
2#define _ASM_X86_KVM_H
3
4/*
5 * KVM x86 specific structures and definitions
6 *
7 */
8

--- 92 unchanged lines hidden (view full) ---

101 } redirtbl[KVM_IOAPIC_NUM_PINS];
102};
103
104#define KVM_IRQCHIP_PIC_MASTER 0
105#define KVM_IRQCHIP_PIC_SLAVE 1
106#define KVM_IRQCHIP_IOAPIC 2
107#define KVM_NR_IRQCHIPS 3
108
1#ifndef _ASM_X86_KVM_H
2#define _ASM_X86_KVM_H
3
4/*
5 * KVM x86 specific structures and definitions
6 *
7 */
8

--- 92 unchanged lines hidden (view full) ---

101 } redirtbl[KVM_IOAPIC_NUM_PINS];
102};
103
104#define KVM_IRQCHIP_PIC_MASTER 0
105#define KVM_IRQCHIP_PIC_SLAVE 1
106#define KVM_IRQCHIP_IOAPIC 2
107#define KVM_NR_IRQCHIPS 3
108
109#define KVM_RUN_X86_SMM (1 << 0)
110
109/* for KVM_GET_REGS and KVM_SET_REGS */
110struct kvm_regs {
111 /* out (KVM_GET_REGS) / in (KVM_SET_REGS) */
112 __u64 rax, rbx, rcx, rdx;
113 __u64 rsi, rdi, rsp, rbp;
114 __u64 r8, r9, r10, r11;
115 __u64 r12, r13, r14, r15;
116 __u64 rip, rflags;

--- 159 unchanged lines hidden (view full) ---

276 __u8 pit_reinject;
277 __u8 reserved[31];
278};
279
280/* When set in flags, include corresponding fields on KVM_SET_VCPU_EVENTS */
281#define KVM_VCPUEVENT_VALID_NMI_PENDING 0x00000001
282#define KVM_VCPUEVENT_VALID_SIPI_VECTOR 0x00000002
283#define KVM_VCPUEVENT_VALID_SHADOW 0x00000004
111/* for KVM_GET_REGS and KVM_SET_REGS */
112struct kvm_regs {
113 /* out (KVM_GET_REGS) / in (KVM_SET_REGS) */
114 __u64 rax, rbx, rcx, rdx;
115 __u64 rsi, rdi, rsp, rbp;
116 __u64 r8, r9, r10, r11;
117 __u64 r12, r13, r14, r15;
118 __u64 rip, rflags;

--- 159 unchanged lines hidden (view full) ---

278 __u8 pit_reinject;
279 __u8 reserved[31];
280};
281
282/* When set in flags, include corresponding fields on KVM_SET_VCPU_EVENTS */
283#define KVM_VCPUEVENT_VALID_NMI_PENDING 0x00000001
284#define KVM_VCPUEVENT_VALID_SIPI_VECTOR 0x00000002
285#define KVM_VCPUEVENT_VALID_SHADOW 0x00000004
286#define KVM_VCPUEVENT_VALID_SMM 0x00000008
284
285/* Interrupt shadow states */
286#define KVM_X86_SHADOW_INT_MOV_SS 0x01
287#define KVM_X86_SHADOW_INT_STI 0x02
288
289/* for KVM_GET/SET_VCPU_EVENTS */
290struct kvm_vcpu_events {
291 struct {

--- 12 unchanged lines hidden (view full) ---

304 struct {
305 __u8 injected;
306 __u8 pending;
307 __u8 masked;
308 __u8 pad;
309 } nmi;
310 __u32 sipi_vector;
311 __u32 flags;
287
288/* Interrupt shadow states */
289#define KVM_X86_SHADOW_INT_MOV_SS 0x01
290#define KVM_X86_SHADOW_INT_STI 0x02
291
292/* for KVM_GET/SET_VCPU_EVENTS */
293struct kvm_vcpu_events {
294 struct {

--- 12 unchanged lines hidden (view full) ---

307 struct {
308 __u8 injected;
309 __u8 pending;
310 __u8 masked;
311 __u8 pad;
312 } nmi;
313 __u32 sipi_vector;
314 __u32 flags;
312 __u32 reserved[10];
315 struct {
316 __u8 smm;
317 __u8 pending;
318 __u8 smm_inside_nmi;
319 __u8 latched_init;
320 } smi;
321 __u32 reserved[9];
313};
314
315/* for KVM_GET/SET_DEBUGREGS */
316struct kvm_debugregs {
317 __u64 db[4];
318 __u64 dr6;
319 __u64 dr7;
320 __u64 flags;

--- 31 unchanged lines hidden ---
322};
323
324/* for KVM_GET/SET_DEBUGREGS */
325struct kvm_debugregs {
326 __u64 db[4];
327 __u64 dr6;
328 __u64 dr7;
329 __u64 flags;

--- 31 unchanged lines hidden ---