File tree Expand file tree Collapse file tree 1 file changed +6
-11
lines changed Expand file tree Collapse file tree 1 file changed +6
-11
lines changed Original file line number Diff line number Diff line change @@ -79,24 +79,18 @@ SYM_CODE_START_NOALIGN(relocate_kernel)
79
79
movq %cr4 , %r13
80
80
movq %r13 , saved_cr4(%rip )
81
81
82
- /* Save SME active flag */
83
- movq %r8 , %r12
84
-
85
82
/* save indirection list for jumping back */
86
83
movq %rdi , pa_backup_pages_map(%rip )
87
84
88
85
/* Save the preserve_context to %r11 as swap_pages clobbers %rcx. */
89
86
movq %rcx , %r11
90
87
91
- /* Physical address of control page */
92
- movq %rsi , %r8
93
-
94
88
/* setup a new stack at the end of the physical control page */
95
- lea PAGE_SIZE(%r8 ), %rsp
89
+ lea PAGE_SIZE(%rsi ), %rsp
96
90
97
91
/* jump to identity mapped page */
98
- addq $(identity_mapped - relocate_kernel), %r8
99
- pushq %r8
92
+ addq $(identity_mapped - relocate_kernel), %rsi
93
+ pushq %rsi
100
94
ANNOTATE_UNRET_SAFE
101
95
ret
102
96
int3
@@ -107,8 +101,9 @@ SYM_CODE_START_LOCAL_NOALIGN(identity_mapped)
107
101
/*
108
102
* %rdi indirection page
109
103
* %rdx start address
104
+ * %r8 host_mem_enc_active
105
+ * %r9 page table page
110
106
* %r11 preserve_context
111
- * %r12 host_mem_enc_active
112
107
* %r13 original CR4 when relocate_kernel() was invoked
113
108
*/
114
109
@@ -161,7 +156,7 @@ SYM_CODE_START_LOCAL_NOALIGN(identity_mapped)
161
156
* entries that will conflict with the now unencrypted memory
162
157
* used by kexec. Flush the caches before copying the kernel.
163
158
*/
164
- testq %r12 , %r12
159
+ testq %r8 , %r8
165
160
jz .Lsme_off
166
161
wbinvd
167
162
.Lsme_off:
You can’t perform that action at this time.
0 commit comments