aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/Kconfig2
-rw-r--r--arch/x86/kernel/apic_32.c2
-rw-r--r--arch/x86/kernel/apic_64.c4
-rw-r--r--arch/x86/kernel/process_32.c2
-rw-r--r--arch/x86/kernel/process_64.c2
-rw-r--r--arch/x86/kernel/setup.c2
-rw-r--r--arch/x86/kernel/setup_32.c4
-rw-r--r--arch/x86/kernel/smpboot.c12
-rw-r--r--arch/x86/kernel/tlb_64.c2
-rw-r--r--arch/x86/kernel/vsyscall_64.c2
-rw-r--r--arch/x86/mach-visws/mpparse.c15
-rw-r--r--arch/x86/mach-voyager/voyager_smp.c17
-rw-r--r--arch/x86/mm/dump_pagetables.c2
-rw-r--r--arch/x86/mm/pageattr.c2
-rw-r--r--arch/x86/mm/srat_64.c2
-rw-r--r--drivers/pci/intel-iommu.c35
-rw-r--r--include/asm-x86/smp.h1
-rw-r--r--include/asm-x86/tsc.h1
18 files changed, 37 insertions, 72 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 87a693cf2bb7..4d350b5cbc71 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -23,7 +23,7 @@ config X86
23 select HAVE_KPROBES 23 select HAVE_KPROBES
24 select HAVE_KRETPROBES 24 select HAVE_KRETPROBES
25 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64) 25 select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64)
26 select HAVE_ARCH_KGDB 26 select HAVE_ARCH_KGDB if !X86_VOYAGER
27 27
28 28
29config GENERIC_LOCKBREAK 29config GENERIC_LOCKBREAK
diff --git a/arch/x86/kernel/apic_32.c b/arch/x86/kernel/apic_32.c
index 687208190b06..8317401170b8 100644
--- a/arch/x86/kernel/apic_32.c
+++ b/arch/x86/kernel/apic_32.c
@@ -902,7 +902,7 @@ void __init init_bsp_APIC(void)
902 apic_write_around(APIC_LVT1, value); 902 apic_write_around(APIC_LVT1, value);
903} 903}
904 904
905void __cpuinit lapic_setup_esr(void) 905static void __cpuinit lapic_setup_esr(void)
906{ 906{
907 unsigned long oldvalue, value, maxlvt; 907 unsigned long oldvalue, value, maxlvt;
908 if (lapic_is_integrated() && !esr_disable) { 908 if (lapic_is_integrated() && !esr_disable) {
diff --git a/arch/x86/kernel/apic_64.c b/arch/x86/kernel/apic_64.c
index 9e8e5c050c55..bf83157337e4 100644
--- a/arch/x86/kernel/apic_64.c
+++ b/arch/x86/kernel/apic_64.c
@@ -429,7 +429,7 @@ void __init setup_boot_APIC_clock(void)
429 * set the DUMMY flag again and force the broadcast mode in the 429 * set the DUMMY flag again and force the broadcast mode in the
430 * clockevents layer. 430 * clockevents layer.
431 */ 431 */
432void __cpuinit check_boot_apic_timer_broadcast(void) 432static void __cpuinit check_boot_apic_timer_broadcast(void)
433{ 433{
434 if (!disable_apic_timer || 434 if (!disable_apic_timer ||
435 (lapic_clockevent.features & CLOCK_EVT_FEAT_DUMMY)) 435 (lapic_clockevent.features & CLOCK_EVT_FEAT_DUMMY))
@@ -834,7 +834,7 @@ void __cpuinit setup_local_APIC(void)
834 preempt_enable(); 834 preempt_enable();
835} 835}
836 836
837void __cpuinit lapic_setup_esr(void) 837static void __cpuinit lapic_setup_esr(void)
838{ 838{
839 unsigned maxlvt = lapic_get_maxlvt(); 839 unsigned maxlvt = lapic_get_maxlvt();
840 840
diff --git a/arch/x86/kernel/process_32.c b/arch/x86/kernel/process_32.c
index 7adad088e373..77de848bd1fb 100644
--- a/arch/x86/kernel/process_32.c
+++ b/arch/x86/kernel/process_32.c
@@ -550,7 +550,7 @@ static void hard_enable_TSC(void)
550 write_cr4(read_cr4() & ~X86_CR4_TSD); 550 write_cr4(read_cr4() & ~X86_CR4_TSD);
551} 551}
552 552
553void enable_TSC(void) 553static void enable_TSC(void)
554{ 554{
555 preempt_disable(); 555 preempt_disable();
556 if (test_and_clear_thread_flag(TIF_NOTSC)) 556 if (test_and_clear_thread_flag(TIF_NOTSC))
diff --git a/arch/x86/kernel/process_64.c b/arch/x86/kernel/process_64.c
index 891af1a1b48a..131c2ee7ac56 100644
--- a/arch/x86/kernel/process_64.c
+++ b/arch/x86/kernel/process_64.c
@@ -562,7 +562,7 @@ static void hard_enable_TSC(void)
562 write_cr4(read_cr4() & ~X86_CR4_TSD); 562 write_cr4(read_cr4() & ~X86_CR4_TSD);
563} 563}
564 564
565void enable_TSC(void) 565static void enable_TSC(void)
566{ 566{
567 preempt_disable(); 567 preempt_disable();
568 if (test_and_clear_thread_flag(TIF_NOTSC)) 568 if (test_and_clear_thread_flag(TIF_NOTSC))
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 0d1f44ae6eea..c0c68c18a788 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -18,8 +18,6 @@ unsigned disabled_cpus __cpuinitdata;
18unsigned int boot_cpu_physical_apicid = -1U; 18unsigned int boot_cpu_physical_apicid = -1U;
19EXPORT_SYMBOL(boot_cpu_physical_apicid); 19EXPORT_SYMBOL(boot_cpu_physical_apicid);
20 20
21physid_mask_t phys_cpu_present_map;
22
23DEFINE_PER_CPU(u16, x86_cpu_to_apicid) = BAD_APICID; 21DEFINE_PER_CPU(u16, x86_cpu_to_apicid) = BAD_APICID;
24EXPORT_PER_CPU_SYMBOL(x86_cpu_to_apicid); 22EXPORT_PER_CPU_SYMBOL(x86_cpu_to_apicid);
25 23
diff --git a/arch/x86/kernel/setup_32.c b/arch/x86/kernel/setup_32.c
index 78828b0f604f..455d3c80960b 100644
--- a/arch/x86/kernel/setup_32.c
+++ b/arch/x86/kernel/setup_32.c
@@ -442,7 +442,7 @@ static void __init reserve_ebda_region(void)
442} 442}
443 443
444#ifndef CONFIG_NEED_MULTIPLE_NODES 444#ifndef CONFIG_NEED_MULTIPLE_NODES
445void __init setup_bootmem_allocator(void); 445static void __init setup_bootmem_allocator(void);
446static unsigned long __init setup_memory(void) 446static unsigned long __init setup_memory(void)
447{ 447{
448 /* 448 /*
@@ -477,7 +477,7 @@ static unsigned long __init setup_memory(void)
477 return max_low_pfn; 477 return max_low_pfn;
478} 478}
479 479
480void __init zone_sizes_init(void) 480static void __init zone_sizes_init(void)
481{ 481{
482 unsigned long max_zone_pfns[MAX_NR_ZONES]; 482 unsigned long max_zone_pfns[MAX_NR_ZONES];
483 memset(max_zone_pfns, 0, sizeof(max_zone_pfns)); 483 memset(max_zone_pfns, 0, sizeof(max_zone_pfns));
diff --git a/arch/x86/kernel/smpboot.c b/arch/x86/kernel/smpboot.c
index 6a925394bc7e..ade371f9663a 100644
--- a/arch/x86/kernel/smpboot.c
+++ b/arch/x86/kernel/smpboot.c
@@ -184,7 +184,7 @@ static void unmap_cpu_to_node(int cpu)
184u8 cpu_2_logical_apicid[NR_CPUS] __read_mostly = 184u8 cpu_2_logical_apicid[NR_CPUS] __read_mostly =
185 { [0 ... NR_CPUS-1] = BAD_APICID }; 185 { [0 ... NR_CPUS-1] = BAD_APICID };
186 186
187void map_cpu_to_logical_apicid(void) 187static void map_cpu_to_logical_apicid(void)
188{ 188{
189 int cpu = smp_processor_id(); 189 int cpu = smp_processor_id();
190 int apicid = logical_smp_processor_id(); 190 int apicid = logical_smp_processor_id();
@@ -197,7 +197,7 @@ void map_cpu_to_logical_apicid(void)
197 map_cpu_to_node(cpu, node); 197 map_cpu_to_node(cpu, node);
198} 198}
199 199
200void unmap_cpu_to_logical_apicid(int cpu) 200static void unmap_cpu_to_logical_apicid(int cpu)
201{ 201{
202 cpu_2_logical_apicid[cpu] = BAD_APICID; 202 cpu_2_logical_apicid[cpu] = BAD_APICID;
203 unmap_cpu_to_node(cpu); 203 unmap_cpu_to_node(cpu);
@@ -211,7 +211,7 @@ void unmap_cpu_to_logical_apicid(int cpu)
211 * Report back to the Boot Processor. 211 * Report back to the Boot Processor.
212 * Running on AP. 212 * Running on AP.
213 */ 213 */
214void __cpuinit smp_callin(void) 214static void __cpuinit smp_callin(void)
215{ 215{
216 int cpuid, phys_id; 216 int cpuid, phys_id;
217 unsigned long timeout; 217 unsigned long timeout;
@@ -436,7 +436,7 @@ valid_k7:
436#endif 436#endif
437} 437}
438 438
439void __cpuinit smp_checks(void) 439static void __cpuinit smp_checks(void)
440{ 440{
441 if (smp_b_stepping) 441 if (smp_b_stepping)
442 printk(KERN_WARNING "WARNING: SMP operation may be unreliable" 442 printk(KERN_WARNING "WARNING: SMP operation may be unreliable"
@@ -565,7 +565,7 @@ void __init smp_alloc_memory(void)
565} 565}
566#endif 566#endif
567 567
568void impress_friends(void) 568static void impress_friends(void)
569{ 569{
570 int cpu; 570 int cpu;
571 unsigned long bogosum = 0; 571 unsigned long bogosum = 0;
@@ -1287,7 +1287,7 @@ void cpu_exit_clear(void)
1287} 1287}
1288# endif /* CONFIG_X86_32 */ 1288# endif /* CONFIG_X86_32 */
1289 1289
1290void remove_siblinginfo(int cpu) 1290static void remove_siblinginfo(int cpu)
1291{ 1291{
1292 int sibling; 1292 int sibling;
1293 struct cpuinfo_x86 *c = &cpu_data(cpu); 1293 struct cpuinfo_x86 *c = &cpu_data(cpu);
diff --git a/arch/x86/kernel/tlb_64.c b/arch/x86/kernel/tlb_64.c
index 1558e513757e..df224a8774cb 100644
--- a/arch/x86/kernel/tlb_64.c
+++ b/arch/x86/kernel/tlb_64.c
@@ -191,7 +191,7 @@ void native_flush_tlb_others(const cpumask_t *cpumaskp, struct mm_struct *mm,
191 spin_unlock(&f->tlbstate_lock); 191 spin_unlock(&f->tlbstate_lock);
192} 192}
193 193
194int __cpuinit init_smp_flush(void) 194static int __cpuinit init_smp_flush(void)
195{ 195{
196 int i; 196 int i;
197 197
diff --git a/arch/x86/kernel/vsyscall_64.c b/arch/x86/kernel/vsyscall_64.c
index edff4c985485..61efa2f7d564 100644
--- a/arch/x86/kernel/vsyscall_64.c
+++ b/arch/x86/kernel/vsyscall_64.c
@@ -216,7 +216,7 @@ vgetcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *tcache)
216 return 0; 216 return 0;
217} 217}
218 218
219long __vsyscall(3) venosys_1(void) 219static long __vsyscall(3) venosys_1(void)
220{ 220{
221 return -ENOSYS; 221 return -ENOSYS;
222} 222}
diff --git a/arch/x86/mach-visws/mpparse.c b/arch/x86/mach-visws/mpparse.c
index 2a8456a1f44f..57484e91ab90 100644
--- a/arch/x86/mach-visws/mpparse.c
+++ b/arch/x86/mach-visws/mpparse.c
@@ -11,22 +11,9 @@
11/* Have we found an MP table */ 11/* Have we found an MP table */
12int smp_found_config; 12int smp_found_config;
13 13
14/*
15 * Various Linux-internal data structures created from the
16 * MP-table.
17 */
18int apic_version [MAX_APICS];
19
20int pic_mode; 14int pic_mode;
21unsigned long mp_lapic_addr;
22
23/* Processor that is doing the boot up */
24unsigned int boot_cpu_physical_apicid = -1U;
25
26/* Bitmask of physically existing CPUs */
27physid_mask_t phys_cpu_present_map;
28 15
29unsigned int __initdata maxcpus = NR_CPUS; 16extern unsigned int __cpuinitdata maxcpus;
30 17
31/* 18/*
32 * The Visual Workstation is Intel MP compliant in the hardware 19 * The Visual Workstation is Intel MP compliant in the hardware
diff --git a/arch/x86/mach-voyager/voyager_smp.c b/arch/x86/mach-voyager/voyager_smp.c
index 96f60c7cd124..d05722121d24 100644
--- a/arch/x86/mach-voyager/voyager_smp.c
+++ b/arch/x86/mach-voyager/voyager_smp.c
@@ -206,11 +206,6 @@ static struct irq_chip vic_chip = {
206/* used to count up as CPUs are brought on line (starts at 0) */ 206/* used to count up as CPUs are brought on line (starts at 0) */
207static int cpucount = 0; 207static int cpucount = 0;
208 208
209/* steal a page from the bottom of memory for the trampoline and
210 * squirrel its address away here. This will be in kernel virtual
211 * space */
212unsigned char *trampoline_base;
213
214/* The per cpu profile stuff - used in smp_local_timer_interrupt */ 209/* The per cpu profile stuff - used in smp_local_timer_interrupt */
215static DEFINE_PER_CPU(int, prof_multiplier) = 1; 210static DEFINE_PER_CPU(int, prof_multiplier) = 1;
216static DEFINE_PER_CPU(int, prof_old_multiplier) = 1; 211static DEFINE_PER_CPU(int, prof_old_multiplier) = 1;
@@ -427,18 +422,6 @@ void __init smp_store_cpu_info(int id)
427 identify_secondary_cpu(c); 422 identify_secondary_cpu(c);
428} 423}
429 424
430/* set up the trampoline and return the physical address of the code */
431unsigned long __init setup_trampoline(void)
432{
433 /* these two are global symbols in trampoline.S */
434 extern const __u8 trampoline_end[];
435 extern const __u8 trampoline_data[];
436
437 memcpy(trampoline_base, trampoline_data,
438 trampoline_end - trampoline_data);
439 return virt_to_phys(trampoline_base);
440}
441
442/* Routine initially called when a non-boot CPU is brought online */ 425/* Routine initially called when a non-boot CPU is brought online */
443static void __init start_secondary(void *unused) 426static void __init start_secondary(void *unused)
444{ 427{
diff --git a/arch/x86/mm/dump_pagetables.c b/arch/x86/mm/dump_pagetables.c
index 6791b8334bc6..2c24bea92c66 100644
--- a/arch/x86/mm/dump_pagetables.c
+++ b/arch/x86/mm/dump_pagetables.c
@@ -324,7 +324,7 @@ static const struct file_operations ptdump_fops = {
324 .release = single_release, 324 .release = single_release,
325}; 325};
326 326
327int pt_dump_init(void) 327static int pt_dump_init(void)
328{ 328{
329 struct dentry *pe; 329 struct dentry *pe;
330 330
diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c
index f7823a172868..c29ebd037254 100644
--- a/arch/x86/mm/pageattr.c
+++ b/arch/x86/mm/pageattr.c
@@ -993,7 +993,7 @@ static const struct file_operations dpa_fops = {
993 .release = single_release, 993 .release = single_release,
994}; 994};
995 995
996int __init debug_pagealloc_proc_init(void) 996static int __init debug_pagealloc_proc_init(void)
997{ 997{
998 struct dentry *de; 998 struct dentry *de;
999 999
diff --git a/arch/x86/mm/srat_64.c b/arch/x86/mm/srat_64.c
index fb43d89f46f3..3890234e5b26 100644
--- a/arch/x86/mm/srat_64.c
+++ b/arch/x86/mm/srat_64.c
@@ -163,7 +163,7 @@ acpi_numa_processor_affinity_init(struct acpi_srat_cpu_affinity *pa)
163 pxm, apic_id, node); 163 pxm, apic_id, node);
164} 164}
165 165
166int update_end_of_memory(unsigned long end) {return -1;} 166static int update_end_of_memory(unsigned long end) {return -1;}
167static int hotadd_enough_memory(struct bootnode *nd) {return 1;} 167static int hotadd_enough_memory(struct bootnode *nd) {return 1;}
168#ifdef CONFIG_MEMORY_HOTPLUG_SPARSE 168#ifdef CONFIG_MEMORY_HOTPLUG_SPARSE
169static inline int save_add_info(void) {return 1;} 169static inline int save_add_info(void) {return 1;}
diff --git a/drivers/pci/intel-iommu.c b/drivers/pci/intel-iommu.c
index 301c68fab03b..1fd8bb765702 100644
--- a/drivers/pci/intel-iommu.c
+++ b/drivers/pci/intel-iommu.c
@@ -1905,32 +1905,31 @@ get_valid_domain_for_dev(struct pci_dev *pdev)
1905 return domain; 1905 return domain;
1906} 1906}
1907 1907
1908static dma_addr_t intel_map_single(struct device *hwdev, void *addr, 1908static dma_addr_t
1909 size_t size, int dir) 1909intel_map_single(struct device *hwdev, phys_addr_t paddr, size_t size, int dir)
1910{ 1910{
1911 struct pci_dev *pdev = to_pci_dev(hwdev); 1911 struct pci_dev *pdev = to_pci_dev(hwdev);
1912 int ret;
1913 struct dmar_domain *domain; 1912 struct dmar_domain *domain;
1914 unsigned long start_addr; 1913 unsigned long start_paddr;
1915 struct iova *iova; 1914 struct iova *iova;
1916 int prot = 0; 1915 int prot = 0;
1916 int ret;
1917 1917
1918 BUG_ON(dir == DMA_NONE); 1918 BUG_ON(dir == DMA_NONE);
1919 if (pdev->dev.archdata.iommu == DUMMY_DEVICE_DOMAIN_INFO) 1919 if (pdev->dev.archdata.iommu == DUMMY_DEVICE_DOMAIN_INFO)
1920 return virt_to_bus(addr); 1920 return paddr;
1921 1921
1922 domain = get_valid_domain_for_dev(pdev); 1922 domain = get_valid_domain_for_dev(pdev);
1923 if (!domain) 1923 if (!domain)
1924 return 0; 1924 return 0;
1925 1925
1926 addr = (void *)virt_to_phys(addr); 1926 size = aligned_size((u64)paddr, size);
1927 size = aligned_size((u64)addr, size);
1928 1927
1929 iova = __intel_alloc_iova(hwdev, domain, size); 1928 iova = __intel_alloc_iova(hwdev, domain, size);
1930 if (!iova) 1929 if (!iova)
1931 goto error; 1930 goto error;
1932 1931
1933 start_addr = iova->pfn_lo << PAGE_SHIFT_4K; 1932 start_paddr = iova->pfn_lo << PAGE_SHIFT_4K;
1934 1933
1935 /* 1934 /*
1936 * Check if DMAR supports zero-length reads on write only 1935 * Check if DMAR supports zero-length reads on write only
@@ -1942,33 +1941,33 @@ static dma_addr_t intel_map_single(struct device *hwdev, void *addr,
1942 if (dir == DMA_FROM_DEVICE || dir == DMA_BIDIRECTIONAL) 1941 if (dir == DMA_FROM_DEVICE || dir == DMA_BIDIRECTIONAL)
1943 prot |= DMA_PTE_WRITE; 1942 prot |= DMA_PTE_WRITE;
1944 /* 1943 /*
1945 * addr - (addr + size) might be partial page, we should map the whole 1944 * paddr - (paddr + size) might be partial page, we should map the whole
1946 * page. Note: if two part of one page are separately mapped, we 1945 * page. Note: if two part of one page are separately mapped, we
1947 * might have two guest_addr mapping to the same host addr, but this 1946 * might have two guest_addr mapping to the same host paddr, but this
1948 * is not a big problem 1947 * is not a big problem
1949 */ 1948 */
1950 ret = domain_page_mapping(domain, start_addr, 1949 ret = domain_page_mapping(domain, start_paddr,
1951 ((u64)addr) & PAGE_MASK_4K, size, prot); 1950 ((u64)paddr) & PAGE_MASK_4K, size, prot);
1952 if (ret) 1951 if (ret)
1953 goto error; 1952 goto error;
1954 1953
1955 pr_debug("Device %s request: %lx@%llx mapping: %lx@%llx, dir %d\n", 1954 pr_debug("Device %s request: %lx@%llx mapping: %lx@%llx, dir %d\n",
1956 pci_name(pdev), size, (u64)addr, 1955 pci_name(pdev), size, (u64)paddr,
1957 size, (u64)start_addr, dir); 1956 size, (u64)start_paddr, dir);
1958 1957
1959 /* it's a non-present to present mapping */ 1958 /* it's a non-present to present mapping */
1960 ret = iommu_flush_iotlb_psi(domain->iommu, domain->id, 1959 ret = iommu_flush_iotlb_psi(domain->iommu, domain->id,
1961 start_addr, size >> PAGE_SHIFT_4K, 1); 1960 start_paddr, size >> PAGE_SHIFT_4K, 1);
1962 if (ret) 1961 if (ret)
1963 iommu_flush_write_buffer(domain->iommu); 1962 iommu_flush_write_buffer(domain->iommu);
1964 1963
1965 return (start_addr + ((u64)addr & (~PAGE_MASK_4K))); 1964 return (start_paddr + ((u64)paddr & (~PAGE_MASK_4K)));
1966 1965
1967error: 1966error:
1968 if (iova) 1967 if (iova)
1969 __free_iova(&domain->iovad, iova); 1968 __free_iova(&domain->iovad, iova);
1970 printk(KERN_ERR"Device %s request: %lx@%llx dir %d --- failed\n", 1969 printk(KERN_ERR"Device %s request: %lx@%llx dir %d --- failed\n",
1971 pci_name(pdev), size, (u64)addr, dir); 1970 pci_name(pdev), size, (u64)paddr, dir);
1972 return 0; 1971 return 0;
1973} 1972}
1974 1973
@@ -2082,7 +2081,7 @@ static void * intel_alloc_coherent(struct device *hwdev, size_t size,
2082 return NULL; 2081 return NULL;
2083 memset(vaddr, 0, size); 2082 memset(vaddr, 0, size);
2084 2083
2085 *dma_handle = intel_map_single(hwdev, vaddr, size, DMA_BIDIRECTIONAL); 2084 *dma_handle = intel_map_single(hwdev, virt_to_bus(vaddr), size, DMA_BIDIRECTIONAL);
2086 if (*dma_handle) 2085 if (*dma_handle)
2087 return vaddr; 2086 return vaddr;
2088 free_pages((unsigned long)vaddr, order); 2087 free_pages((unsigned long)vaddr, order);
diff --git a/include/asm-x86/smp.h b/include/asm-x86/smp.h
index 62ebdec394b9..1ebaa5cd3112 100644
--- a/include/asm-x86/smp.h
+++ b/include/asm-x86/smp.h
@@ -199,7 +199,6 @@ static inline int hard_smp_processor_id(void)
199#ifdef CONFIG_HOTPLUG_CPU 199#ifdef CONFIG_HOTPLUG_CPU
200extern void cpu_exit_clear(void); 200extern void cpu_exit_clear(void);
201extern void cpu_uninit(void); 201extern void cpu_uninit(void);
202extern void remove_siblinginfo(int cpu);
203#endif 202#endif
204 203
205extern void smp_alloc_memory(void); 204extern void smp_alloc_memory(void);
diff --git a/include/asm-x86/tsc.h b/include/asm-x86/tsc.h
index 0434bd8349a7..d2d8eb5b55f5 100644
--- a/include/asm-x86/tsc.h
+++ b/include/asm-x86/tsc.h
@@ -18,7 +18,6 @@ extern unsigned int cpu_khz;
18extern unsigned int tsc_khz; 18extern unsigned int tsc_khz;
19 19
20extern void disable_TSC(void); 20extern void disable_TSC(void);
21extern void enable_TSC(void);
22 21
23static inline cycles_t get_cycles(void) 22static inline cycles_t get_cycles(void)
24{ 23{