/root/src/xen/xen/include/compat/arch-x86/xen.h
Line  | Count  | Source (jump to first uncovered line)  | 
1  |  | #ifndef _COMPAT_ARCH_X86_XEN_H  | 
2  |  | #define _COMPAT_ARCH_X86_XEN_H  | 
3  |  | #include <xen/compat.h>  | 
4  |  | #pragma pack(4)  | 
5  |  | #include "../xen.h"  | 
6  |  | #pragma pack(4)  | 
7  |  | #define __DECL_REG_LO8(which) uint32_t e ## which ## x  | 
8  |  | #define __DECL_REG_LO16(name) union { uint32_t e ## name; } | 
9  |  |  | 
10  |  | #include "xen-x86_32.h"  | 
11  |  | #pragma pack(4)  | 
12  |  |  | 
13  |  | #undef __DECL_REG_LO8  | 
14  |  | #undef __DECL_REG_LO16  | 
15  | 0  | #define __DECL_REG_LO8(which) e ## which ## x  | 
16  | 0  | #define __DECL_REG_LO16(name) e ## name  | 
17  |  |  | 
18  |  | typedef unsigned int compat_pfn_t;  | 
19  |  | typedef unsigned int compat_ulong_t;  | 
20  |  | struct compat_trap_info { | 
21  |  |     uint8_t vector;  | 
22  |  |     uint8_t flags;  | 
23  |  |     uint16_t cs;  | 
24  |  |     unsigned int address;  | 
25  |  | };  | 
26  |  | typedef struct compat_trap_info trap_info_compat_t;  | 
27  |  | DEFINE_COMPAT_HANDLE(trap_info_compat_t);  | 
28  |  |  | 
29  |  | typedef uint64_t tsc_timestamp_compat_t;  | 
30  |  | struct compat_vcpu_guest_context { | 
31  |  |  | 
32  |  |     struct { char x[512]; } fpu_ctxt; | 
33  |  |     unsigned int flags;  | 
34  |  |     struct compat_cpu_user_regs user_regs;  | 
35  |  |     struct compat_trap_info trap_ctxt[256];  | 
36  |  |     unsigned int ldt_base, ldt_ents;  | 
37  |  |     unsigned int gdt_frames[16], gdt_ents;  | 
38  |  |     unsigned int kernel_ss, kernel_sp;  | 
39  |  |  | 
40  |  |     unsigned int ctrlreg[8];  | 
41  |  |     unsigned int debugreg[8];  | 
42  |  |  | 
43  |  |     unsigned int event_callback_cs;  | 
44  |  |     unsigned int event_callback_eip;  | 
45  |  |     unsigned int failsafe_callback_cs;  | 
46  |  |     unsigned int failsafe_callback_eip;  | 
47  |  |     unsigned int vm_assist;  | 
48  |  |  | 
49  |  | };  | 
50  |  | typedef struct compat_vcpu_guest_context vcpu_guest_context_compat_t;  | 
51  |  | DEFINE_COMPAT_HANDLE(vcpu_guest_context_compat_t);  | 
52  |  |  | 
53  |  | struct compat_arch_shared_info { | 
54  |  |  | 
55  |  |     unsigned int max_pfn;  | 
56  |  |  | 
57  |  |     compat_pfn_t pfn_to_mfn_frame_list_list;  | 
58  |  |     unsigned int nmi_reason;  | 
59  |  |     unsigned int p2m_cr3;  | 
60  |  |     unsigned int p2m_vaddr;  | 
61  |  |     unsigned int p2m_generation;  | 
62  |  |  | 
63  |  |     uint32_t wc_sec_hi;  | 
64  |  |  | 
65  |  | };  | 
66  |  | typedef struct compat_arch_shared_info arch_shared_info_compat_t;  | 
67  |  |  | 
68  |  | struct compat_arch_domainconfig { | 
69  |  |     uint32_t emulation_flags;  | 
70  |  | };  | 
71  |  | #pragma pack()  | 
72  |  | #endif /* _COMPAT_ARCH_X86_XEN_H */  |