@@ -59,7 +59,7 @@ vmx_vmrun:
59
59
60
60
/* 0x00000048 = MSR_IA32_SPEC_CTRL */
61
61
movl $0x00000048 ,%ecx
62
- mov VMX_MACHINE_T_GUEST_SPEC_CTRL_OFFSET (%rdi ),%rax
62
+ mov CPU_CONTEXT_OFFSET_IA32_SPEC_CTRL (%rdi ),%rax
63
63
movl $0 ,%edx
64
64
wrmsr
65
65
@@ -80,25 +80,25 @@ next:
80
80
/* Compare the launch flag to see if launching (1) or resuming (0) */
81
81
cmp $VM_LAUNCH, %rsi
82
82
83
- mov VMX_MACHINE_T_GUEST_CR2_OFFSET (%rdi ),%rax
83
+ mov CPU_CONTEXT_OFFSET_CR2 (%rdi ),%rax
84
84
mov %rax ,%cr2
85
85
86
- mov VMX_MACHINE_T_GUEST_RAX_OFFSET (%rdi ),%rax
87
- mov VMX_MACHINE_T_GUEST_RBX_OFFSET (%rdi ),%rbx
88
- mov VMX_MACHINE_T_GUEST_RCX_OFFSET (%rdi ),%rcx
89
- mov VMX_MACHINE_T_GUEST_RDX_OFFSET (%rdi ),%rdx
90
- mov VMX_MACHINE_T_GUEST_RBP_OFFSET (%rdi ),%rbp
91
- mov VMX_MACHINE_T_GUEST_RSI_OFFSET (%rdi ),%rsi
92
- mov VMX_MACHINE_T_GUEST_R8_OFFSET (%rdi ),%r8
93
- mov VMX_MACHINE_T_GUEST_R9_OFFSET (%rdi ),%r9
94
- mov VMX_MACHINE_T_GUEST_R10_OFFSET (%rdi ),%r10
95
- mov VMX_MACHINE_T_GUEST_R11_OFFSET (%rdi ),%r11
96
- mov VMX_MACHINE_T_GUEST_R12_OFFSET (%rdi ),%r12
97
- mov VMX_MACHINE_T_GUEST_R13_OFFSET (%rdi ),%r13
98
- mov VMX_MACHINE_T_GUEST_R14_OFFSET (%rdi ),%r14
99
- mov VMX_MACHINE_T_GUEST_R15_OFFSET (%rdi ),%r15
100
-
101
- mov VMX_MACHINE_T_GUEST_RDI_OFFSET (%rdi ),%rdi
86
+ mov CPU_CONTEXT_OFFSET_RAX (%rdi ),%rax
87
+ mov CPU_CONTEXT_OFFSET_RBX (%rdi ),%rbx
88
+ mov CPU_CONTEXT_OFFSET_RCX (%rdi ),%rcx
89
+ mov CPU_CONTEXT_OFFSET_RDX (%rdi ),%rdx
90
+ mov CPU_CONTEXT_OFFSET_RBP (%rdi ),%rbp
91
+ mov CPU_CONTEXT_OFFSET_RSI (%rdi ),%rsi
92
+ mov CPU_CONTEXT_OFFSET_R8 (%rdi ),%r8
93
+ mov CPU_CONTEXT_OFFSET_R9 (%rdi ),%r9
94
+ mov CPU_CONTEXT_OFFSET_R10 (%rdi ),%r10
95
+ mov CPU_CONTEXT_OFFSET_R11 (%rdi ),%r11
96
+ mov CPU_CONTEXT_OFFSET_R12 (%rdi ),%r12
97
+ mov CPU_CONTEXT_OFFSET_R13 (%rdi ),%r13
98
+ mov CPU_CONTEXT_OFFSET_R14 (%rdi ),%r14
99
+ mov CPU_CONTEXT_OFFSET_R15 (%rdi ),%r15
100
+
101
+ mov CPU_CONTEXT_OFFSET_RDI (%rdi ),%rdi
102
102
103
103
/* Execute appropriate VMX instruction */
104
104
je vm_launch
@@ -122,30 +122,30 @@ vm_exit:
122
122
xchg 0 (%rsp ),%rdi
123
123
124
124
/* Save current GPRs to guest state area */
125
- mov %rax ,VMX_MACHINE_T_GUEST_RAX_OFFSET (%rdi )
125
+ mov %rax ,CPU_CONTEXT_OFFSET_RAX (%rdi )
126
126
127
127
mov %cr2 ,%rax
128
- mov %rax ,VMX_MACHINE_T_GUEST_CR2_OFFSET (%rdi )
129
-
130
- mov %rbx ,VMX_MACHINE_T_GUEST_RBX_OFFSET (%rdi )
131
- mov %rcx ,VMX_MACHINE_T_GUEST_RCX_OFFSET (%rdi )
132
- mov %rdx ,VMX_MACHINE_T_GUEST_RDX_OFFSET (%rdi )
133
- mov %rbp ,VMX_MACHINE_T_GUEST_RBP_OFFSET (%rdi )
134
- mov %rsi ,VMX_MACHINE_T_GUEST_RSI_OFFSET (%rdi )
135
- mov %r8 ,VMX_MACHINE_T_GUEST_R8_OFFSET (%rdi )
136
- mov %r9 ,VMX_MACHINE_T_GUEST_R9_OFFSET (%rdi )
137
- mov %r10 ,VMX_MACHINE_T_GUEST_R10_OFFSET (%rdi )
138
- mov %r11 ,VMX_MACHINE_T_GUEST_R11_OFFSET (%rdi )
139
- mov %r12 ,VMX_MACHINE_T_GUEST_R12_OFFSET (%rdi )
140
- mov %r13 ,VMX_MACHINE_T_GUEST_R13_OFFSET (%rdi )
141
- mov %r14 ,VMX_MACHINE_T_GUEST_R14_OFFSET (%rdi )
142
- mov %r15 ,VMX_MACHINE_T_GUEST_R15_OFFSET (%rdi )
128
+ mov %rax ,CPU_CONTEXT_OFFSET_CR2 (%rdi )
129
+
130
+ mov %rbx ,CPU_CONTEXT_OFFSET_RBX (%rdi )
131
+ mov %rcx ,CPU_CONTEXT_OFFSET_RCX (%rdi )
132
+ mov %rdx ,CPU_CONTEXT_OFFSET_RDX (%rdi )
133
+ mov %rbp ,CPU_CONTEXT_OFFSET_RBP (%rdi )
134
+ mov %rsi ,CPU_CONTEXT_OFFSET_RSI (%rdi )
135
+ mov %r8 ,CPU_CONTEXT_OFFSET_R8 (%rdi )
136
+ mov %r9 ,CPU_CONTEXT_OFFSET_R9 (%rdi )
137
+ mov %r10 ,CPU_CONTEXT_OFFSET_R10 (%rdi )
138
+ mov %r11 ,CPU_CONTEXT_OFFSET_R11 (%rdi )
139
+ mov %r12 ,CPU_CONTEXT_OFFSET_R12 (%rdi )
140
+ mov %r13 ,CPU_CONTEXT_OFFSET_R13 (%rdi )
141
+ mov %r14 ,CPU_CONTEXT_OFFSET_R14 (%rdi )
142
+ mov %r15 ,CPU_CONTEXT_OFFSET_R15 (%rdi )
143
143
144
144
/* Load guest RDI off host stack and into RDX */
145
145
mov 0 (%rsp ),%rdx
146
146
147
147
/* Save guest RDI to guest state area */
148
- mov %rdx ,VMX_MACHINE_T_GUEST_RDI_OFFSET (%rdi )
148
+ mov %rdx ,CPU_CONTEXT_OFFSET_RDI (%rdi )
149
149
150
150
/* Save RDI to RSI for later SPEC_CTRL save*/
151
151
mov %rdi ,%rsi
@@ -192,7 +192,7 @@ vm_eval_error:
192
192
*/
193
193
movl $0x00000048 ,%ecx
194
194
rdmsr
195
- mov %rax ,VMX_MACHINE_T_GUEST_SPEC_CTRL_OFFSET (%rsi )
195
+ mov %rax ,CPU_CONTEXT_OFFSET_IA32_SPEC_CTRL (%rsi )
196
196
/* 0x1 = SPEC_ENABLE_IBRS */
197
197
movl $0x1 ,%eax
198
198
movl $0 ,%edx
@@ -215,7 +215,7 @@ ibrs_opt:
215
215
*/
216
216
movl $0x00000048 ,%ecx
217
217
rdmsr
218
- mov %rax ,VMX_MACHINE_T_GUEST_SPEC_CTRL_OFFSET (%rsi )
218
+ mov %rax ,CPU_CONTEXT_OFFSET_IA32_SPEC_CTRL (%rsi )
219
219
/* 0x2 = SPEC_ENABLE_STIBP */
220
220
movl $0x2 ,%eax
221
221
movl $0 ,%edx
0 commit comments