qubes-linux-kernel/patches.xen/xen3-fixup-arch-x86
2010-07-07 13:12:45 +02:00

68 lines
2.5 KiB
Plaintext

Subject: xen3 x86 build fixes.
From: jbeulich@novell.com
Patch-mainline: n/a
--- head-2010-05-25.orig/arch/x86/include/asm/topology.h 2010-05-25 09:12:09.000000000 +0200
+++ head-2010-05-25/arch/x86/include/asm/topology.h 2010-03-24 15:06:06.000000000 +0100
@@ -30,7 +30,7 @@
# define ENABLE_TOPO_DEFINES
# endif
#else
-# ifdef CONFIG_SMP
+# if defined(CONFIG_SMP) && !defined(CONFIG_XEN)
# define ENABLE_TOPO_DEFINES
# endif
#endif
--- head-2010-05-25.orig/arch/x86/kdb/kdba_bt.c 2010-05-25 09:12:09.000000000 +0200
+++ head-2010-05-25/arch/x86/kdb/kdba_bt.c 2010-04-15 09:51:55.000000000 +0200
@@ -3244,6 +3244,9 @@ bb_usage_mov(const struct bb_operand *sr
bb_is_int_reg(dst->base_rc) &&
full_register_dst) {
#ifdef CONFIG_X86_32
+#ifndef TSS_sysenter_sp0
+#define TSS_sysenter_sp0 SYSENTER_stack_sp0
+#endif
/* mov from TSS_sysenter_sp0+offset to esp to fix up the
* sysenter stack, it leaves esp well defined. mov
* TSS_ysenter_sp0+offset(%esp),%esp is followed by up to 5
--- head-2010-05-25.orig/arch/x86/kernel/cpu/intel_cacheinfo.c 2010-05-25 09:12:09.000000000 +0200
+++ head-2010-05-25/arch/x86/kernel/cpu/intel_cacheinfo.c 2010-05-25 09:20:14.000000000 +0200
@@ -632,7 +632,7 @@ unsigned int __cpuinit init_intel_cachei
static DEFINE_PER_CPU(struct _cpuid4_info *, ici_cpuid4_info);
#define CPUID4_INFO_IDX(x, y) (&((per_cpu(ici_cpuid4_info, x))[y]))
-#ifdef CONFIG_SMP
+#if defined(CONFIG_SMP) && !defined(CONFIG_XEN)
static void __cpuinit cache_shared_cpu_map_setup(unsigned int cpu, int index)
{
struct _cpuid4_info *this_leaf, *sibling_leaf;
--- head-2010-05-25.orig/arch/x86/power/Makefile 2010-05-25 09:12:09.000000000 +0200
+++ head-2010-05-25/arch/x86/power/Makefile 2010-03-24 15:06:06.000000000 +0100
@@ -5,3 +5,5 @@ CFLAGS_cpu.o := $(nostackp)
obj-$(CONFIG_PM_SLEEP) += cpu.o
obj-$(CONFIG_HIBERNATION) += hibernate_$(BITS).o hibernate_asm_$(BITS).o
+
+disabled-obj-$(CONFIG_XEN) := cpu.o
--- head-2010-05-25.orig/arch/x86/power/cpu.c 2010-03-24 15:01:37.000000000 +0100
+++ head-2010-05-25/arch/x86/power/cpu.c 2010-03-24 15:06:06.000000000 +0100
@@ -126,7 +126,6 @@ static void do_fpu_end(void)
static void fix_processor_context(void)
{
-#ifndef CONFIG_X86_NO_TSS
int cpu = smp_processor_id();
struct tss_struct *t = &per_cpu(init_tss, cpu);
@@ -139,10 +138,7 @@ static void fix_processor_context(void)
#ifdef CONFIG_X86_64
get_cpu_gdt_table(cpu)[GDT_ENTRY_TSS].type = 9;
-#endif
-#endif
-#ifdef CONFIG_X86_64
syscall_init(); /* This sets MSR_*STAR and related */
#endif
load_TR_desc(); /* This does ltr */