From: Andrew Cooper Date: Mon, 15 Jul 2019 16:21:02 +0000 (+0100) Subject: x86/suspend: Don't save/restore %cr8 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=d5c326eca804e180e1dd37b47bba1a7ed3a124da;p=people%2Fdwmw2%2Fxen.git x86/suspend: Don't save/restore %cr8 %cr8 is an alias of APIC_TASKPRI, which is handled by lapic_{suspend,resume}() with the rest of the Local APIC state. Saving and restoring the TPR state in isolation is not a clever idea. Drop it all. While editing wakeup_prot.S, trim its include list to just the headers which are used, which is precicely none of them. Signed-off-by: Andrew Cooper Acked-by: Jan Beulich --- diff --git a/xen/arch/x86/acpi/wakeup_prot.S b/xen/arch/x86/acpi/wakeup_prot.S index 361751d290..4a92627436 100644 --- a/xen/arch/x86/acpi/wakeup_prot.S +++ b/xen/arch/x86/acpi/wakeup_prot.S @@ -1,13 +1,5 @@ .file __FILE__ .text - -#include -#include -#include -#include -#include -#include - .code64 #define GREG(x) %r##x @@ -40,9 +32,6 @@ ENTRY(do_suspend_lowlevel) pushfq; popq SAVED_GREG(flags) - mov %cr8, GREG(ax) - mov GREG(ax), REF(saved_cr8) - mov %ss, REF(saved_ss) sgdt REF(saved_gdt) @@ -90,9 +79,6 @@ ENTRY(__ret_point) pushq %rax lretq 1: - mov REF(saved_cr8), %rax - mov %rax, %cr8 - pushq SAVED_GREG(flags) popfq @@ -149,4 +135,3 @@ saved_ldt: .quad 0,0 saved_cr0: .quad 0 saved_cr3: .quad 0 -saved_cr8: .quad 0