diff --git a/xen/arch/x86/x86_64/Makefile b/xen/arch/x86/x86_64/Makefile index d5af722421..5b54c16d09 100644 --- a/xen/arch/x86/x86_64/Makefile +++ b/xen/arch/x86/x86_64/Makefile @@ -3,7 +3,7 @@ subdir-y += compat obj-bin-y += entry.o obj-bin-y += gpr_switch.o obj-y += traps.o -obj-y += machine_kexec.o +obj-$(CONFIG_KEXEC) += machine_kexec.o obj-y += pci.o obj-y += acpi_mmcfg.o obj-y += mmconf-fam10h.o @@ -12,6 +12,6 @@ obj-y += mmconfig-shared.o obj-y += domain.o obj-y += cpu_idle.o obj-y += cpufreq.o -obj-bin-y += kexec_reloc.o +obj-bin-$(CONFIG_KEXEC) += kexec_reloc.o obj-$(crash_debug) += gdbstub.o diff --git a/xen/arch/x86/xen.lds.S b/xen/arch/x86/xen.lds.S index 6553cff56f..e18e08fc5a 100644 --- a/xen/arch/x86/xen.lds.S +++ b/xen/arch/x86/xen.lds.S @@ -220,5 +220,9 @@ SECTIONS ASSERT(__image_base__ > XEN_VIRT_START || _end <= XEN_VIRT_END - NR_CPUS * PAGE_SIZE, "Xen image overlaps stubs area") + +#ifdef CONFIG_KEXEC ASSERT(kexec_reloc_size - kexec_reloc <= PAGE_SIZE, "kexec_reloc is too large") +#endif + ASSERT((cpu0_stack & (STACK_SIZE - 1)) == 0, "cpu0_stack misaligned") diff --git a/xen/include/asm-x86/smp.h b/xen/include/asm-x86/smp.h index 64f510b6ba..33c2c32f42 100644 --- a/xen/include/asm-x86/smp.h +++ b/xen/include/asm-x86/smp.h @@ -37,7 +37,6 @@ extern void (*mtrr_hook) (void); extern void zap_low_mappings(void); -#define MAX_APICID 256 extern u32 x86_cpu_to_apicid[]; #define cpu_physical_id(cpu) x86_cpu_to_apicid[cpu]