mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 10:11:27 +01:00
x86/svm: Use C99 types in VMCB struct
No functional change intended. Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com> Signed-off-by: Ross Lagerwall <ross.lagerwall@citrix.com> Reviewed-by: Jason Andryuk <jason.andryuk@amd.com> Acked-by: Jan Beulich <jbeulich@suse.com>
This commit is contained in:
1 parent
768d772e09
commit
9b8aadbed5
1 file changed
+64
-64
+64
-64
@@ -405,24 +405,24 @@ typedef union
|
||||
|
||||
struct vmcb_struct {
|
||||
/* Control area */
|
||||
u32 _cr_intercepts; /* offset 0x00 - cleanbit 0 */
|
||||
u32 _dr_intercepts; /* offset 0x04 - cleanbit 0 */
|
||||
u32 _exception_intercepts; /* offset 0x08 - cleanbit 0 */
|
||||
u32 _general1_intercepts; /* offset 0x0C - cleanbit 0 */
|
||||
u32 _general2_intercepts; /* offset 0x10 - cleanbit 0 */
|
||||
u32 _general3_intercepts; /* offset 0x14 - cleanbit 0 */
|
||||
u32 res01[9];
|
||||
u16 _pause_filter_thresh; /* offset 0x3C - cleanbit 0 */
|
||||
u16 _pause_filter_count; /* offset 0x3E - cleanbit 0 */
|
||||
u64 _iopm_base_pa; /* offset 0x40 - cleanbit 1 */
|
||||
u64 _msrpm_base_pa; /* offset 0x48 - cleanbit 1 */
|
||||
u64 _tsc_offset; /* offset 0x50 - cleanbit 0 */
|
||||
u32 _asid; /* offset 0x58 - cleanbit 2 */
|
||||
u8 tlb_control; /* offset 0x5C - TLB_CTRL_* */
|
||||
u8 res07[3];
|
||||
uint32_t _cr_intercepts; /* offset 0x00 - cleanbit 0 */
|
||||
uint32_t _dr_intercepts; /* offset 0x04 - cleanbit 0 */
|
||||
uint32_t _exception_intercepts; /* offset 0x08 - cleanbit 0 */
|
||||
uint32_t _general1_intercepts; /* offset 0x0C - cleanbit 0 */
|
||||
uint32_t _general2_intercepts; /* offset 0x10 - cleanbit 0 */
|
||||
uint32_t _general3_intercepts; /* offset 0x14 - cleanbit 0 */
|
||||
uint32_t res01[9];
|
||||
uint16_t _pause_filter_thresh; /* offset 0x3C - cleanbit 0 */
|
||||
uint16_t _pause_filter_count; /* offset 0x3E - cleanbit 0 */
|
||||
uint64_t _iopm_base_pa; /* offset 0x40 - cleanbit 1 */
|
||||
uint64_t _msrpm_base_pa; /* offset 0x48 - cleanbit 1 */
|
||||
uint64_t _tsc_offset; /* offset 0x50 - cleanbit 0 */
|
||||
uint32_t _asid; /* offset 0x58 - cleanbit 2 */
|
||||
uint8_t tlb_control; /* offset 0x5C - TLB_CTRL_* */
|
||||
uint8_t res07[3];
|
||||
vintr_t _vintr; /* offset 0x60 - cleanbit 3 */
|
||||
intstat_t int_stat; /* offset 0x68 */
|
||||
u64 exitcode; /* offset 0x70 */
|
||||
uint64_t exitcode; /* offset 0x70 */
|
||||
union {
|
||||
struct {
|
||||
uint64_t exitinfo1; /* offset 0x78 */
|
||||
@@ -486,19 +486,19 @@ struct vmcb_struct {
|
||||
};
|
||||
uint64_t _np_ctrl;
|
||||
};
|
||||
u64 res08[2];
|
||||
uint64_t res08[2];
|
||||
intinfo_t event_inj; /* offset 0xA8 */
|
||||
u64 _h_cr3; /* offset 0xB0 - cleanbit 4 */
|
||||
uint64_t _h_cr3; /* offset 0xB0 - cleanbit 4 */
|
||||
virt_ext_t virt_ext; /* offset 0xB8 */
|
||||
vmcbcleanbits_t cleanbits; /* offset 0xC0 */
|
||||
u32 res09; /* offset 0xC4 */
|
||||
u64 nextrip; /* offset 0xC8 */
|
||||
u8 guest_ins_len; /* offset 0xD0 */
|
||||
u8 guest_ins[15]; /* offset 0xD1 */
|
||||
u64 res10a[8]; /* offset 0xE0 */
|
||||
u16 bus_lock_count; /* offset 0x120 */
|
||||
u16 res10b[3]; /* offset 0x122 */
|
||||
u64 res10c[91]; /* offset 0x128 pad to save area */
|
||||
uint32_t res09; /* offset 0xC4 */
|
||||
uint64_t nextrip; /* offset 0xC8 */
|
||||
uint8_t guest_ins_len; /* offset 0xD0 */
|
||||
uint8_t guest_ins[15]; /* offset 0xD1 */
|
||||
uint64_t res10a[8]; /* offset 0xE0 */
|
||||
uint16_t bus_lock_count; /* offset 0x120 */
|
||||
uint16_t res10b[3]; /* offset 0x122 */
|
||||
uint64_t res10c[91]; /* offset 0x128 pad to save area */
|
||||
|
||||
/* State Save area */
|
||||
union {
|
||||
@@ -516,44 +516,44 @@ struct vmcb_struct {
|
||||
struct segment_register ldtr;
|
||||
struct segment_register idtr; /* cleanbit 7 */
|
||||
struct segment_register tr;
|
||||
u64 res10[5];
|
||||
u8 res11[3];
|
||||
u8 _cpl; /* cleanbit 8 */
|
||||
u32 res12;
|
||||
u64 _efer; /* offset 0x400 + 0xD0 - cleanbit 5 */
|
||||
u64 res13[14];
|
||||
u64 _cr4; /* offset 0x400 + 0x148 - cleanbit 5 */
|
||||
u64 _cr3; /* cleanbit 5 */
|
||||
u64 _cr0; /* cleanbit 5 */
|
||||
u64 _dr7; /* cleanbit 6 */
|
||||
u64 _dr6; /* cleanbit 6 */
|
||||
u64 rflags;
|
||||
u64 rip;
|
||||
u64 res14[11];
|
||||
u64 rsp;
|
||||
u64 _msr_s_cet; /* offset 0x400 + 0x1E0 - cleanbit 12 */
|
||||
u64 _ssp; /* offset 0x400 + 0x1E8 | */
|
||||
u64 _msr_isst; /* offset 0x400 + 0x1F0 v */
|
||||
u64 rax;
|
||||
u64 star;
|
||||
u64 lstar;
|
||||
u64 cstar;
|
||||
u64 sfmask;
|
||||
u64 kerngsbase;
|
||||
u64 sysenter_cs;
|
||||
u64 sysenter_esp;
|
||||
u64 sysenter_eip;
|
||||
u64 _cr2; /* cleanbit 9 */
|
||||
u64 res16[4];
|
||||
u64 _g_pat; /* cleanbit 4 */
|
||||
u64 _debugctlmsr; /* cleanbit 10 */
|
||||
u64 _lastbranchfromip; /* cleanbit 10 */
|
||||
u64 _lastbranchtoip; /* cleanbit 10 */
|
||||
u64 _lastintfromip; /* cleanbit 10 */
|
||||
u64 _lastinttoip; /* cleanbit 10 */
|
||||
u64 res17[9];
|
||||
u64 spec_ctrl;
|
||||
u64 res18[291];
|
||||
uint64_t res10[5];
|
||||
uint8_t res11[3];
|
||||
uint8_t _cpl; /* cleanbit 8 */
|
||||
uint32_t res12;
|
||||
uint64_t _efer; /* offset 0x400 + 0xD0 - cleanbit 5 */
|
||||
uint64_t res13[14];
|
||||
uint64_t _cr4; /* offset 0x400 + 0x148 - cleanbit 5 */
|
||||
uint64_t _cr3; /* cleanbit 5 */
|
||||
uint64_t _cr0; /* cleanbit 5 */
|
||||
uint64_t _dr7; /* cleanbit 6 */
|
||||
uint64_t _dr6; /* cleanbit 6 */
|
||||
uint64_t rflags;
|
||||
uint64_t rip;
|
||||
uint64_t res14[11];
|
||||
uint64_t rsp;
|
||||
uint64_t _msr_s_cet; /* offset 0x400 + 0x1E0 - cleanbit 12 */
|
||||
uint64_t _ssp; /* offset 0x400 + 0x1E8 | */
|
||||
uint64_t _msr_isst; /* offset 0x400 + 0x1F0 v */
|
||||
uint64_t rax;
|
||||
uint64_t star;
|
||||
uint64_t lstar;
|
||||
uint64_t cstar;
|
||||
uint64_t sfmask;
|
||||
uint64_t kerngsbase;
|
||||
uint64_t sysenter_cs;
|
||||
uint64_t sysenter_esp;
|
||||
uint64_t sysenter_eip;
|
||||
uint64_t _cr2; /* cleanbit 9 */
|
||||
uint64_t res16[4];
|
||||
uint64_t _g_pat; /* cleanbit 4 */
|
||||
uint64_t _debugctlmsr; /* cleanbit 10 */
|
||||
uint64_t _lastbranchfromip; /* cleanbit 10 */
|
||||
uint64_t _lastbranchtoip; /* cleanbit 10 */
|
||||
uint64_t _lastintfromip; /* cleanbit 10 */
|
||||
uint64_t _lastinttoip; /* cleanbit 10 */
|
||||
uint64_t res17[9];
|
||||
uint64_t spec_ctrl;
|
||||
uint64_t res18[291];
|
||||
};
|
||||
|
||||
struct vmcb_struct *alloc_vmcb(void);
|
||||
|
||||