diff -Nru linux/arch/x86_64/kernel/head.S linux~/arch/x86_64/kernel/head.S --- linux/arch/x86_64/kernel/head.S 2004-02-19 03:10:55.000000000 -0800 +++ linux~/arch/x86_64/kernel/head.S 2004-02-19 04:21:51.000000000 -0800 @@ -358,7 +358,7 @@ /* asm/segment.h:GDT_ENTRIES must match this */ /* This should be a multiple of the cache line size */ /* GDTs of other CPUs: */ - .fill (L1_CACHE_BYTES * NR_CPUS) - (gdt_end - cpu_gdt_table) + .fill (GDT_SIZE * NR_CPUS) - (gdt_end - cpu_gdt_table) .align L1_CACHE_BYTES ENTRY(idt_table) diff -Nru linux/arch/x86_64/kernel/setup.c linux~/arch/x86_64/kernel/setup.c --- linux/arch/x86_64/kernel/setup.c 2004-02-19 03:10:55.000000000 -0800 +++ linux~/arch/x86_64/kernel/setup.c 2004-02-19 03:18:58.000000000 -0800 @@ -586,6 +586,7 @@ return r; } +#ifdef CONFIG_X86_HT static void __init detect_ht(void) { extern int phys_proc_id[NR_CPUS]; @@ -632,6 +633,7 @@ phys_proc_id[cpu]); } } +#endif #define LVL_1_INST 1 #define LVL_1_DATA 2 @@ -761,8 +763,10 @@ c->x86_cache_size = l2 ? l2 : (l1i+l1d); } +#ifdef CONFIG_X86_HT if (cpu_has(c, X86_FEATURE_HT)) detect_ht(); +#endif n = cpuid_eax(0x80000000); if (n >= 0x80000008) { diff -Nru linux/arch/x86_64/kernel/x8664_ksyms.c linux~/arch/x86_64/kernel/x8664_ksyms.c --- linux/arch/x86_64/kernel/x8664_ksyms.c 2004-02-19 03:10:55.000000000 -0800 +++ linux~/arch/x86_64/kernel/x8664_ksyms.c 2004-02-19 03:20:04.000000000 -0800 @@ -194,7 +194,10 @@ EXPORT_SYMBOL(die_chain); +#ifdef CONFIG_X86_HT +EXPORT_SYMBOL(smp_num_siblings); EXPORT_SYMBOL(cpu_sibling_map); +#endif extern void do_softirq_thunk(void); EXPORT_SYMBOL_NOVERS(do_softirq_thunk); diff -Nru linux/include/asm-x86_64/segment.h linux~/include/asm-x86_64/segment.h --- linux/include/asm-x86_64/segment.h 2004-02-19 03:11:05.000000000 -0800 +++ linux~/include/asm-x86_64/segment.h 2004-02-19 04:21:17.000000000 -0800 @@ -40,7 +40,7 @@ #define FS_TLS_SEL ((GDT_ENTRY_TLS_MIN+FS_TLS)*8 + 3) #define IDT_ENTRIES 256 -#define GDT_ENTRIES (L1_CACHE_BYTES / 8) +#define GDT_ENTRIES 16 #define GDT_SIZE (GDT_ENTRIES * 8) #define TLS_SIZE (GDT_ENTRY_TLS_ENTRIES * 8)