Commit 153f8057 authored by James Bottomley's avatar James Bottomley Committed by Linus Torvalds

[PATCH] fix voyager subarchitecture EXPORT_SYMBOL breakage caused by i386_ksym reduction

This patch:

	[PATCH] Remove i386_ksyms.c, almost

made files like smp.c do their own EXPORT_SYMBOLS.  This means that all
subarchitectures that override these symbols now have to do the exports
themselves.  This patch adds the exports for voyager (which is the most
affected since it has a separate smp harness).  However, someone should
audit all the other subarchitectures to see if any others got broken.
Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent c327ff62
...@@ -36,6 +36,7 @@ ...@@ -36,6 +36,7 @@
* Power off function, if any * Power off function, if any
*/ */
void (*pm_power_off)(void); void (*pm_power_off)(void);
EXPORT_SYMBOL(pm_power_off);
int voyager_level = 0; int voyager_level = 0;
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
* the voyager hal to provide the functionality * the voyager hal to provide the functionality
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
#include <linux/delay.h> #include <linux/delay.h>
...@@ -40,6 +41,7 @@ static unsigned long cpu_irq_affinity[NR_CPUS] __cacheline_aligned = { [0 ... NR ...@@ -40,6 +41,7 @@ static unsigned long cpu_irq_affinity[NR_CPUS] __cacheline_aligned = { [0 ... NR
/* per CPU data structure (for /proc/cpuinfo et al), visible externally /* per CPU data structure (for /proc/cpuinfo et al), visible externally
* indexed physically */ * indexed physically */
struct cpuinfo_x86 cpu_data[NR_CPUS] __cacheline_aligned; struct cpuinfo_x86 cpu_data[NR_CPUS] __cacheline_aligned;
EXPORT_SYMBOL(cpu_data);
/* physical ID of the CPU used to boot the system */ /* physical ID of the CPU used to boot the system */
unsigned char boot_cpu_id; unsigned char boot_cpu_id;
...@@ -72,6 +74,7 @@ static volatile unsigned long smp_invalidate_needed; ...@@ -72,6 +74,7 @@ static volatile unsigned long smp_invalidate_needed;
/* Bitmask of currently online CPUs - used by setup.c for /* Bitmask of currently online CPUs - used by setup.c for
/proc/cpuinfo, visible externally but still physical */ /proc/cpuinfo, visible externally but still physical */
cpumask_t cpu_online_map = CPU_MASK_NONE; cpumask_t cpu_online_map = CPU_MASK_NONE;
EXPORT_SYMBOL(cpu_online_map);
/* Bitmask of CPUs present in the system - exported by i386_syms.c, used /* Bitmask of CPUs present in the system - exported by i386_syms.c, used
* by scheduler but indexed physically */ * by scheduler but indexed physically */
...@@ -238,6 +241,7 @@ static cpumask_t smp_commenced_mask = CPU_MASK_NONE; ...@@ -238,6 +241,7 @@ static cpumask_t smp_commenced_mask = CPU_MASK_NONE;
/* This is for the new dynamic CPU boot code */ /* This is for the new dynamic CPU boot code */
cpumask_t cpu_callin_map = CPU_MASK_NONE; cpumask_t cpu_callin_map = CPU_MASK_NONE;
cpumask_t cpu_callout_map = CPU_MASK_NONE; cpumask_t cpu_callout_map = CPU_MASK_NONE;
EXPORT_SYMBOL(cpu_callout_map);
/* The per processor IRQ masks (these are usually kept in sync) */ /* The per processor IRQ masks (these are usually kept in sync) */
static __u16 vic_irq_mask[NR_CPUS] __cacheline_aligned; static __u16 vic_irq_mask[NR_CPUS] __cacheline_aligned;
...@@ -978,6 +982,7 @@ void flush_tlb_page(struct vm_area_struct * vma, unsigned long va) ...@@ -978,6 +982,7 @@ void flush_tlb_page(struct vm_area_struct * vma, unsigned long va)
preempt_enable(); preempt_enable();
} }
EXPORT_SYMBOL(flush_tlb_page);
/* enable the requested IRQs */ /* enable the requested IRQs */
static void static void
...@@ -1109,6 +1114,7 @@ smp_call_function (void (*func) (void *info), void *info, int retry, ...@@ -1109,6 +1114,7 @@ smp_call_function (void (*func) (void *info), void *info, int retry,
return 0; return 0;
} }
EXPORT_SYMBOL(smp_call_function);
/* Sorry about the name. In an APIC based system, the APICs /* Sorry about the name. In an APIC based system, the APICs
* themselves are programmed to send a timer interrupt. This is used * themselves are programmed to send a timer interrupt. This is used
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment