From: Andrew Cooper Date: Tue, 31 Dec 2024 15:56:34 +0000 (+0000) Subject: x86/traps: Move percpu_traps_init() into traps-init.c X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=21ac6beaa36df56c68591c05554ee613f735f2a0;p=people%2Fandrewcoop%2Fxen.git x86/traps: Move percpu_traps_init() into traps-init.c --- diff --git a/xen/arch/x86/acpi/power.c b/xen/arch/x86/acpi/power.c index d0b67614d5..c8405a085e 100644 --- a/xen/arch/x86/acpi/power.c +++ b/xen/arch/x86/acpi/power.c @@ -31,6 +31,7 @@ #include #include #include +#include #include diff --git a/xen/arch/x86/include/asm/system.h b/xen/arch/x86/include/asm/system.h index 73cb16ca68..73364056c7 100644 --- a/xen/arch/x86/include/asm/system.h +++ b/xen/arch/x86/include/asm/system.h @@ -266,7 +266,6 @@ static inline int local_irq_is_enabled(void) void trap_init(void); void init_idt_traps(void); void load_system_tables(void); -void percpu_traps_init(void); void subarch_percpu_traps_init(void); #endif diff --git a/xen/arch/x86/include/asm/traps.h b/xen/arch/x86/include/asm/traps.h index 01ef362edc..825f7441c8 100644 --- a/xen/arch/x86/include/asm/traps.h +++ b/xen/arch/x86/include/asm/traps.h @@ -7,6 +7,8 @@ #ifndef ASM_TRAP_H #define ASM_TRAP_H +void percpu_traps_init(void); + const char *vector_name(unsigned int vec); #endif /* ASM_TRAP_H */ diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index ec3fb08800..a1d80f237c 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -56,6 +56,7 @@ #include #include #include +#include #include diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c index 50dd81d2db..b9bb76f7a5 100644 --- a/xen/arch/x86/smpboot.c +++ b/xen/arch/x86/smpboot.c @@ -41,6 +41,7 @@ #include #include #include +#include uint32_t __ro_after_init trampoline_phys; enum ap_boot_method __read_mostly ap_boot_method = AP_BOOT_NORMAL; diff --git a/xen/arch/x86/traps-init.c b/xen/arch/x86/traps-init.c index ab00bf9a74..2eef8c577c 100644 --- a/xen/arch/x86/traps-init.c +++ b/xen/arch/x86/traps-init.c @@ -3,6 +3,17 @@ * Configuration of event handling for all CPUs. */ #include +#include #include +#include +#include DEFINE_PER_CPU_READ_MOSTLY(idt_entry_t *, idt); + +void percpu_traps_init(void) +{ + subarch_percpu_traps_init(); + + if ( cpu_has_xen_lbr ) + wrmsrl(MSR_IA32_DEBUGCTLMSR, IA32_DEBUGCTLMSR_LBR); +} diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c index 257a150555..ce01630e90 100644 --- a/xen/arch/x86/traps.c +++ b/xen/arch/x86/traps.c @@ -1862,14 +1862,6 @@ void asmlinkage do_entry_CP(struct cpu_user_regs *regs) panic("CONTROL-FLOW PROTECTION FAULT: #CP[%04x] %s\n", ec, err); } -void percpu_traps_init(void) -{ - subarch_percpu_traps_init(); - - if ( cpu_has_xen_lbr ) - wrmsrl(MSR_IA32_DEBUGCTLMSR, IA32_DEBUGCTLMSR_LBR); -} - void nocall entry_PF(void); void __init init_idt_traps(void)