diff options
Diffstat (limited to 'arch/i386')
-rw-r--r-- | arch/i386/kernel/i386_ksyms.c | 160 | ||||
-rw-r--r-- | arch/i386/kernel/i387.c | 3 | ||||
-rw-r--r-- | arch/i386/kernel/io_apic.c | 3 | ||||
-rw-r--r-- | arch/i386/kernel/pci-dma.c | 3 | ||||
-rw-r--r-- | arch/i386/kernel/process.c | 7 | ||||
-rw-r--r-- | arch/i386/kernel/reboot.c | 5 | ||||
-rw-r--r-- | arch/i386/kernel/setup.c | 20 | ||||
-rw-r--r-- | arch/i386/kernel/smp.c | 3 | ||||
-rw-r--r-- | arch/i386/kernel/smpboot.c | 12 | ||||
-rw-r--r-- | arch/i386/kernel/time.c | 4 | ||||
-rw-r--r-- | arch/i386/kernel/traps.c | 3 | ||||
-rw-r--r-- | arch/i386/lib/dec_and_lock.c | 2 | ||||
-rw-r--r-- | arch/i386/lib/delay.c | 6 | ||||
-rw-r--r-- | arch/i386/lib/mmx.c | 5 | ||||
-rw-r--r-- | arch/i386/lib/usercopy.c | 8 | ||||
-rw-r--r-- | arch/i386/mm/discontig.c | 3 | ||||
-rw-r--r-- | arch/i386/mm/highmem.c | 6 | ||||
-rw-r--r-- | arch/i386/mm/init.c | 1 | ||||
-rw-r--r-- | arch/i386/mm/ioremap.c | 5 | ||||
-rw-r--r-- | arch/i386/pci/pcbios.c | 4 |
20 files changed, 101 insertions, 162 deletions
diff --git a/arch/i386/kernel/i386_ksyms.c b/arch/i386/kernel/i386_ksyms.c index 903190a4b3ff..180f070d03cb 100644 --- a/arch/i386/kernel/i386_ksyms.c +++ b/arch/i386/kernel/i386_ksyms.c | |||
@@ -1,97 +1,17 @@ | |||
1 | #include <linux/config.h> | 1 | #include <linux/config.h> |
2 | #include <linux/module.h> | 2 | #include <linux/module.h> |
3 | #include <linux/smp.h> | ||
4 | #include <linux/user.h> | ||
5 | #include <linux/elfcore.h> | ||
6 | #include <linux/mca.h> | ||
7 | #include <linux/sched.h> | ||
8 | #include <linux/in6.h> | ||
9 | #include <linux/interrupt.h> | ||
10 | #include <linux/smp_lock.h> | ||
11 | #include <linux/pm.h> | ||
12 | #include <linux/pci.h> | ||
13 | #include <linux/apm_bios.h> | ||
14 | #include <linux/kernel.h> | ||
15 | #include <linux/string.h> | ||
16 | #include <linux/tty.h> | ||
17 | #include <linux/highmem.h> | ||
18 | #include <linux/time.h> | ||
19 | |||
20 | #include <asm/semaphore.h> | ||
21 | #include <asm/processor.h> | ||
22 | #include <asm/i387.h> | ||
23 | #include <asm/uaccess.h> | ||
24 | #include <asm/checksum.h> | 3 | #include <asm/checksum.h> |
25 | #include <asm/io.h> | ||
26 | #include <asm/delay.h> | ||
27 | #include <asm/irq.h> | ||
28 | #include <asm/mmx.h> | ||
29 | #include <asm/desc.h> | 4 | #include <asm/desc.h> |
30 | #include <asm/pgtable.h> | ||
31 | #include <asm/tlbflush.h> | ||
32 | #include <asm/nmi.h> | ||
33 | #include <asm/ist.h> | ||
34 | #include <asm/kdebug.h> | ||
35 | |||
36 | extern void dump_thread(struct pt_regs *, struct user *); | ||
37 | extern spinlock_t rtc_lock; | ||
38 | 5 | ||
39 | /* This is definitely a GPL-only symbol */ | 6 | /* This is definitely a GPL-only symbol */ |
40 | EXPORT_SYMBOL_GPL(cpu_gdt_table); | 7 | EXPORT_SYMBOL_GPL(cpu_gdt_table); |
41 | 8 | ||
42 | #if defined(CONFIG_APM_MODULE) | ||
43 | extern void machine_real_restart(unsigned char *, int); | ||
44 | EXPORT_SYMBOL(machine_real_restart); | ||
45 | extern void default_idle(void); | ||
46 | EXPORT_SYMBOL(default_idle); | ||
47 | #endif | ||
48 | |||
49 | #ifdef CONFIG_SMP | ||
50 | extern void FASTCALL( __write_lock_failed(rwlock_t *rw)); | ||
51 | extern void FASTCALL( __read_lock_failed(rwlock_t *rw)); | ||
52 | #endif | ||
53 | |||
54 | #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_HD) || defined(CONFIG_BLK_DEV_IDE_MODULE) || defined(CONFIG_BLK_DEV_HD_MODULE) | ||
55 | extern struct drive_info_struct drive_info; | ||
56 | EXPORT_SYMBOL(drive_info); | ||
57 | #endif | ||
58 | |||
59 | extern unsigned long cpu_khz; | ||
60 | extern unsigned long get_cmos_time(void); | ||
61 | |||
62 | /* platform dependent support */ | ||
63 | EXPORT_SYMBOL(boot_cpu_data); | ||
64 | #ifdef CONFIG_DISCONTIGMEM | ||
65 | EXPORT_SYMBOL(node_data); | ||
66 | EXPORT_SYMBOL(physnode_map); | ||
67 | #endif | ||
68 | #ifdef CONFIG_X86_NUMAQ | ||
69 | EXPORT_SYMBOL(xquad_portio); | ||
70 | #endif | ||
71 | EXPORT_SYMBOL(dump_thread); | ||
72 | EXPORT_SYMBOL(dump_fpu); | ||
73 | EXPORT_SYMBOL_GPL(kernel_fpu_begin); | ||
74 | EXPORT_SYMBOL(__ioremap); | ||
75 | EXPORT_SYMBOL(ioremap_nocache); | ||
76 | EXPORT_SYMBOL(iounmap); | ||
77 | EXPORT_SYMBOL(kernel_thread); | ||
78 | EXPORT_SYMBOL(pm_idle); | ||
79 | EXPORT_SYMBOL(pm_power_off); | ||
80 | EXPORT_SYMBOL(get_cmos_time); | ||
81 | EXPORT_SYMBOL(cpu_khz); | ||
82 | EXPORT_SYMBOL(apm_info); | ||
83 | |||
84 | EXPORT_SYMBOL(__down_failed); | 9 | EXPORT_SYMBOL(__down_failed); |
85 | EXPORT_SYMBOL(__down_failed_interruptible); | 10 | EXPORT_SYMBOL(__down_failed_interruptible); |
86 | EXPORT_SYMBOL(__down_failed_trylock); | 11 | EXPORT_SYMBOL(__down_failed_trylock); |
87 | EXPORT_SYMBOL(__up_wakeup); | 12 | EXPORT_SYMBOL(__up_wakeup); |
88 | /* Networking helper routines. */ | 13 | /* Networking helper routines. */ |
89 | EXPORT_SYMBOL(csum_partial_copy_generic); | 14 | EXPORT_SYMBOL(csum_partial_copy_generic); |
90 | /* Delay loops */ | ||
91 | EXPORT_SYMBOL(__ndelay); | ||
92 | EXPORT_SYMBOL(__udelay); | ||
93 | EXPORT_SYMBOL(__delay); | ||
94 | EXPORT_SYMBOL(__const_udelay); | ||
95 | 15 | ||
96 | EXPORT_SYMBOL(__get_user_1); | 16 | EXPORT_SYMBOL(__get_user_1); |
97 | EXPORT_SYMBOL(__get_user_2); | 17 | EXPORT_SYMBOL(__get_user_2); |
@@ -105,87 +25,11 @@ EXPORT_SYMBOL(__put_user_8); | |||
105 | EXPORT_SYMBOL(strpbrk); | 25 | EXPORT_SYMBOL(strpbrk); |
106 | EXPORT_SYMBOL(strstr); | 26 | EXPORT_SYMBOL(strstr); |
107 | 27 | ||
108 | EXPORT_SYMBOL(strncpy_from_user); | ||
109 | EXPORT_SYMBOL(__strncpy_from_user); | ||
110 | EXPORT_SYMBOL(clear_user); | ||
111 | EXPORT_SYMBOL(__clear_user); | ||
112 | EXPORT_SYMBOL(__copy_from_user_ll); | ||
113 | EXPORT_SYMBOL(__copy_to_user_ll); | ||
114 | EXPORT_SYMBOL(strnlen_user); | ||
115 | |||
116 | EXPORT_SYMBOL(dma_alloc_coherent); | ||
117 | EXPORT_SYMBOL(dma_free_coherent); | ||
118 | |||
119 | #ifdef CONFIG_PCI | ||
120 | EXPORT_SYMBOL(pci_mem_start); | ||
121 | #endif | ||
122 | |||
123 | #ifdef CONFIG_PCI_BIOS | ||
124 | EXPORT_SYMBOL(pcibios_set_irq_routing); | ||
125 | EXPORT_SYMBOL(pcibios_get_irq_routing_table); | ||
126 | #endif | ||
127 | |||
128 | #ifdef CONFIG_X86_USE_3DNOW | ||
129 | EXPORT_SYMBOL(_mmx_memcpy); | ||
130 | EXPORT_SYMBOL(mmx_clear_page); | ||
131 | EXPORT_SYMBOL(mmx_copy_page); | ||
132 | #endif | ||
133 | |||
134 | #ifdef CONFIG_X86_HT | ||
135 | EXPORT_SYMBOL(smp_num_siblings); | ||
136 | EXPORT_SYMBOL(cpu_sibling_map); | ||
137 | #endif | ||
138 | |||
139 | #ifdef CONFIG_SMP | 28 | #ifdef CONFIG_SMP |
140 | EXPORT_SYMBOL(cpu_data); | 29 | extern void FASTCALL( __write_lock_failed(rwlock_t *rw)); |
141 | EXPORT_SYMBOL(cpu_online_map); | 30 | extern void FASTCALL( __read_lock_failed(rwlock_t *rw)); |
142 | EXPORT_SYMBOL(cpu_callout_map); | ||
143 | EXPORT_SYMBOL(__write_lock_failed); | 31 | EXPORT_SYMBOL(__write_lock_failed); |
144 | EXPORT_SYMBOL(__read_lock_failed); | 32 | EXPORT_SYMBOL(__read_lock_failed); |
145 | |||
146 | /* Global SMP stuff */ | ||
147 | EXPORT_SYMBOL(smp_call_function); | ||
148 | |||
149 | /* TLB flushing */ | ||
150 | EXPORT_SYMBOL(flush_tlb_page); | ||
151 | #endif | ||
152 | |||
153 | #ifdef CONFIG_X86_IO_APIC | ||
154 | EXPORT_SYMBOL(IO_APIC_get_PCI_irq_vector); | ||
155 | #endif | ||
156 | |||
157 | #ifdef CONFIG_MCA | ||
158 | EXPORT_SYMBOL(machine_id); | ||
159 | #endif | ||
160 | |||
161 | #ifdef CONFIG_VT | ||
162 | EXPORT_SYMBOL(screen_info); | ||
163 | #endif | ||
164 | |||
165 | EXPORT_SYMBOL(get_wchan); | ||
166 | |||
167 | EXPORT_SYMBOL(rtc_lock); | ||
168 | |||
169 | EXPORT_SYMBOL_GPL(set_nmi_callback); | ||
170 | EXPORT_SYMBOL_GPL(unset_nmi_callback); | ||
171 | |||
172 | EXPORT_SYMBOL(register_die_notifier); | ||
173 | #ifdef CONFIG_HAVE_DEC_LOCK | ||
174 | EXPORT_SYMBOL(_atomic_dec_and_lock); | ||
175 | #endif | ||
176 | |||
177 | EXPORT_SYMBOL(__PAGE_KERNEL); | ||
178 | |||
179 | #ifdef CONFIG_HIGHMEM | ||
180 | EXPORT_SYMBOL(kmap); | ||
181 | EXPORT_SYMBOL(kunmap); | ||
182 | EXPORT_SYMBOL(kmap_atomic); | ||
183 | EXPORT_SYMBOL(kunmap_atomic); | ||
184 | EXPORT_SYMBOL(kmap_atomic_to_page); | ||
185 | #endif | ||
186 | |||
187 | #if defined(CONFIG_X86_SPEEDSTEP_SMI) || defined(CONFIG_X86_SPEEDSTEP_SMI_MODULE) | ||
188 | EXPORT_SYMBOL(ist_info); | ||
189 | #endif | 33 | #endif |
190 | 34 | ||
191 | EXPORT_SYMBOL(csum_partial); | 35 | EXPORT_SYMBOL(csum_partial); |
diff --git a/arch/i386/kernel/i387.c b/arch/i386/kernel/i387.c index c55e037f08f7..b817168d9c62 100644 --- a/arch/i386/kernel/i387.c +++ b/arch/i386/kernel/i387.c | |||
@@ -10,6 +10,7 @@ | |||
10 | 10 | ||
11 | #include <linux/config.h> | 11 | #include <linux/config.h> |
12 | #include <linux/sched.h> | 12 | #include <linux/sched.h> |
13 | #include <linux/module.h> | ||
13 | #include <asm/processor.h> | 14 | #include <asm/processor.h> |
14 | #include <asm/i387.h> | 15 | #include <asm/i387.h> |
15 | #include <asm/math_emu.h> | 16 | #include <asm/math_emu.h> |
@@ -79,6 +80,7 @@ void kernel_fpu_begin(void) | |||
79 | } | 80 | } |
80 | clts(); | 81 | clts(); |
81 | } | 82 | } |
83 | EXPORT_SYMBOL_GPL(kernel_fpu_begin); | ||
82 | 84 | ||
83 | void restore_fpu( struct task_struct *tsk ) | 85 | void restore_fpu( struct task_struct *tsk ) |
84 | { | 86 | { |
@@ -526,6 +528,7 @@ int dump_fpu( struct pt_regs *regs, struct user_i387_struct *fpu ) | |||
526 | 528 | ||
527 | return fpvalid; | 529 | return fpvalid; |
528 | } | 530 | } |
531 | EXPORT_SYMBOL(dump_fpu); | ||
529 | 532 | ||
530 | int dump_task_fpu(struct task_struct *tsk, struct user_i387_struct *fpu) | 533 | int dump_task_fpu(struct task_struct *tsk, struct user_i387_struct *fpu) |
531 | { | 534 | { |
diff --git a/arch/i386/kernel/io_apic.c b/arch/i386/kernel/io_apic.c index 51f7a5d8721f..08540bc4ba3e 100644 --- a/arch/i386/kernel/io_apic.c +++ b/arch/i386/kernel/io_apic.c | |||
@@ -31,7 +31,7 @@ | |||
31 | #include <linux/mc146818rtc.h> | 31 | #include <linux/mc146818rtc.h> |
32 | #include <linux/compiler.h> | 32 | #include <linux/compiler.h> |
33 | #include <linux/acpi.h> | 33 | #include <linux/acpi.h> |
34 | 34 | #include <linux/module.h> | |
35 | #include <linux/sysdev.h> | 35 | #include <linux/sysdev.h> |
36 | #include <asm/io.h> | 36 | #include <asm/io.h> |
37 | #include <asm/smp.h> | 37 | #include <asm/smp.h> |
@@ -812,6 +812,7 @@ int IO_APIC_get_PCI_irq_vector(int bus, int slot, int pin) | |||
812 | } | 812 | } |
813 | return best_guess; | 813 | return best_guess; |
814 | } | 814 | } |
815 | EXPORT_SYMBOL(IO_APIC_get_PCI_irq_vector); | ||
815 | 816 | ||
816 | /* | 817 | /* |
817 | * This function currently is only a helper for the i386 smp boot process where | 818 | * This function currently is only a helper for the i386 smp boot process where |
diff --git a/arch/i386/kernel/pci-dma.c b/arch/i386/kernel/pci-dma.c index 4de2e03c7b45..1e51427cc9eb 100644 --- a/arch/i386/kernel/pci-dma.c +++ b/arch/i386/kernel/pci-dma.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <linux/mm.h> | 11 | #include <linux/mm.h> |
12 | #include <linux/string.h> | 12 | #include <linux/string.h> |
13 | #include <linux/pci.h> | 13 | #include <linux/pci.h> |
14 | #include <linux/module.h> | ||
14 | #include <asm/io.h> | 15 | #include <asm/io.h> |
15 | 16 | ||
16 | struct dma_coherent_mem { | 17 | struct dma_coherent_mem { |
@@ -54,6 +55,7 @@ void *dma_alloc_coherent(struct device *dev, size_t size, | |||
54 | } | 55 | } |
55 | return ret; | 56 | return ret; |
56 | } | 57 | } |
58 | EXPORT_SYMBOL(dma_alloc_coherent); | ||
57 | 59 | ||
58 | void dma_free_coherent(struct device *dev, size_t size, | 60 | void dma_free_coherent(struct device *dev, size_t size, |
59 | void *vaddr, dma_addr_t dma_handle) | 61 | void *vaddr, dma_addr_t dma_handle) |
@@ -68,6 +70,7 @@ void dma_free_coherent(struct device *dev, size_t size, | |||
68 | } else | 70 | } else |
69 | free_pages((unsigned long)vaddr, order); | 71 | free_pages((unsigned long)vaddr, order); |
70 | } | 72 | } |
73 | EXPORT_SYMBOL(dma_free_coherent); | ||
71 | 74 | ||
72 | int dma_declare_coherent_memory(struct device *dev, dma_addr_t bus_addr, | 75 | int dma_declare_coherent_memory(struct device *dev, dma_addr_t bus_addr, |
73 | dma_addr_t device_addr, size_t size, int flags) | 76 | dma_addr_t device_addr, size_t size, int flags) |
diff --git a/arch/i386/kernel/process.c b/arch/i386/kernel/process.c index 96e3ea6b17c7..3c3f245cca53 100644 --- a/arch/i386/kernel/process.c +++ b/arch/i386/kernel/process.c | |||
@@ -73,6 +73,7 @@ unsigned long thread_saved_pc(struct task_struct *tsk) | |||
73 | * Powermanagement idle function, if any.. | 73 | * Powermanagement idle function, if any.. |
74 | */ | 74 | */ |
75 | void (*pm_idle)(void); | 75 | void (*pm_idle)(void); |
76 | EXPORT_SYMBOL(pm_idle); | ||
76 | static DEFINE_PER_CPU(unsigned int, cpu_idle_state); | 77 | static DEFINE_PER_CPU(unsigned int, cpu_idle_state); |
77 | 78 | ||
78 | void disable_hlt(void) | 79 | void disable_hlt(void) |
@@ -105,6 +106,9 @@ void default_idle(void) | |||
105 | cpu_relax(); | 106 | cpu_relax(); |
106 | } | 107 | } |
107 | } | 108 | } |
109 | #ifdef CONFIG_APM_MODULE | ||
110 | EXPORT_SYMBOL(default_idle); | ||
111 | #endif | ||
108 | 112 | ||
109 | /* | 113 | /* |
110 | * On SMP it's slightly faster (but much more power-consuming!) | 114 | * On SMP it's slightly faster (but much more power-consuming!) |
@@ -325,6 +329,7 @@ int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags) | |||
325 | /* Ok, create the new process.. */ | 329 | /* Ok, create the new process.. */ |
326 | return do_fork(flags | CLONE_VM | CLONE_UNTRACED, 0, ®s, 0, NULL, NULL); | 330 | return do_fork(flags | CLONE_VM | CLONE_UNTRACED, 0, ®s, 0, NULL, NULL); |
327 | } | 331 | } |
332 | EXPORT_SYMBOL(kernel_thread); | ||
328 | 333 | ||
329 | /* | 334 | /* |
330 | * Free current thread data structures etc.. | 335 | * Free current thread data structures etc.. |
@@ -508,6 +513,7 @@ void dump_thread(struct pt_regs * regs, struct user * dump) | |||
508 | 513 | ||
509 | dump->u_fpvalid = dump_fpu (regs, &dump->i387); | 514 | dump->u_fpvalid = dump_fpu (regs, &dump->i387); |
510 | } | 515 | } |
516 | EXPORT_SYMBOL(dump_thread); | ||
511 | 517 | ||
512 | /* | 518 | /* |
513 | * Capture the user space registers if the task is not running (in user space) | 519 | * Capture the user space registers if the task is not running (in user space) |
@@ -731,6 +737,7 @@ unsigned long get_wchan(struct task_struct *p) | |||
731 | } while (count++ < 16); | 737 | } while (count++ < 16); |
732 | return 0; | 738 | return 0; |
733 | } | 739 | } |
740 | EXPORT_SYMBOL(get_wchan); | ||
734 | 741 | ||
735 | /* | 742 | /* |
736 | * sys_alloc_thread_area: get a yet unused TLS descriptor index. | 743 | * sys_alloc_thread_area: get a yet unused TLS descriptor index. |
diff --git a/arch/i386/kernel/reboot.c b/arch/i386/kernel/reboot.c index 6dc27eb70ee7..db912209a8d3 100644 --- a/arch/i386/kernel/reboot.c +++ b/arch/i386/kernel/reboot.c | |||
@@ -2,6 +2,7 @@ | |||
2 | * linux/arch/i386/kernel/reboot.c | 2 | * linux/arch/i386/kernel/reboot.c |
3 | */ | 3 | */ |
4 | 4 | ||
5 | #include <linux/config.h> | ||
5 | #include <linux/mm.h> | 6 | #include <linux/mm.h> |
6 | #include <linux/module.h> | 7 | #include <linux/module.h> |
7 | #include <linux/delay.h> | 8 | #include <linux/delay.h> |
@@ -19,6 +20,7 @@ | |||
19 | * Power off function, if any | 20 | * Power off function, if any |
20 | */ | 21 | */ |
21 | void (*pm_power_off)(void); | 22 | void (*pm_power_off)(void); |
23 | EXPORT_SYMBOL(pm_power_off); | ||
22 | 24 | ||
23 | static int reboot_mode; | 25 | static int reboot_mode; |
24 | static int reboot_thru_bios; | 26 | static int reboot_thru_bios; |
@@ -295,6 +297,9 @@ void machine_real_restart(unsigned char *code, int length) | |||
295 | : | 297 | : |
296 | : "i" ((void *) (0x1000 - sizeof (real_mode_switch) - 100))); | 298 | : "i" ((void *) (0x1000 - sizeof (real_mode_switch) - 100))); |
297 | } | 299 | } |
300 | #ifdef CONFIG_APM_MODULE | ||
301 | EXPORT_SYMBOL(machine_real_restart); | ||
302 | #endif | ||
298 | 303 | ||
299 | void machine_restart(char * __unused) | 304 | void machine_restart(char * __unused) |
300 | { | 305 | { |
diff --git a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c index 0d689335c8d6..30406fd0b64c 100644 --- a/arch/i386/kernel/setup.c +++ b/arch/i386/kernel/setup.c | |||
@@ -23,6 +23,7 @@ | |||
23 | * This file handles the architecture-dependent parts of initialization | 23 | * This file handles the architecture-dependent parts of initialization |
24 | */ | 24 | */ |
25 | 25 | ||
26 | #include <linux/config.h> | ||
26 | #include <linux/sched.h> | 27 | #include <linux/sched.h> |
27 | #include <linux/mm.h> | 28 | #include <linux/mm.h> |
28 | #include <linux/mmzone.h> | 29 | #include <linux/mmzone.h> |
@@ -74,6 +75,7 @@ EXPORT_SYMBOL(efi_enabled); | |||
74 | struct cpuinfo_x86 new_cpu_data __initdata = { 0, 0, 0, 0, -1, 1, 0, 0, -1 }; | 75 | struct cpuinfo_x86 new_cpu_data __initdata = { 0, 0, 0, 0, -1, 1, 0, 0, -1 }; |
75 | /* common cpu data for all cpus */ | 76 | /* common cpu data for all cpus */ |
76 | struct cpuinfo_x86 boot_cpu_data = { 0, 0, 0, 0, -1, 1, 0, 0, -1 }; | 77 | struct cpuinfo_x86 boot_cpu_data = { 0, 0, 0, 0, -1, 1, 0, 0, -1 }; |
78 | EXPORT_SYMBOL(boot_cpu_data); | ||
77 | 79 | ||
78 | unsigned long mmu_cr4_features; | 80 | unsigned long mmu_cr4_features; |
79 | 81 | ||
@@ -91,12 +93,18 @@ extern acpi_interrupt_flags acpi_sci_flags; | |||
91 | 93 | ||
92 | /* for MCA, but anyone else can use it if they want */ | 94 | /* for MCA, but anyone else can use it if they want */ |
93 | unsigned int machine_id; | 95 | unsigned int machine_id; |
96 | #ifdef CONFIG_MCA | ||
97 | EXPORT_SYMBOL(machine_id); | ||
98 | #endif | ||
94 | unsigned int machine_submodel_id; | 99 | unsigned int machine_submodel_id; |
95 | unsigned int BIOS_revision; | 100 | unsigned int BIOS_revision; |
96 | unsigned int mca_pentium_flag; | 101 | unsigned int mca_pentium_flag; |
97 | 102 | ||
98 | /* For PCI or other memory-mapped resources */ | 103 | /* For PCI or other memory-mapped resources */ |
99 | unsigned long pci_mem_start = 0x10000000; | 104 | unsigned long pci_mem_start = 0x10000000; |
105 | #ifdef CONFIG_PCI | ||
106 | EXPORT_SYMBOL(pci_mem_start); | ||
107 | #endif | ||
100 | 108 | ||
101 | /* Boot loader ID as an integer, for the benefit of proc_dointvec */ | 109 | /* Boot loader ID as an integer, for the benefit of proc_dointvec */ |
102 | int bootloader_type; | 110 | int bootloader_type; |
@@ -108,14 +116,26 @@ static unsigned int highmem_pages = -1; | |||
108 | * Setup options | 116 | * Setup options |
109 | */ | 117 | */ |
110 | struct drive_info_struct { char dummy[32]; } drive_info; | 118 | struct drive_info_struct { char dummy[32]; } drive_info; |
119 | #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_HD) || \ | ||
120 | defined(CONFIG_BLK_DEV_IDE_MODULE) || defined(CONFIG_BLK_DEV_HD_MODULE) | ||
121 | EXPORT_SYMBOL(drive_info); | ||
122 | #endif | ||
111 | struct screen_info screen_info; | 123 | struct screen_info screen_info; |
124 | #ifdef CONFIG_VT | ||
125 | EXPORT_SYMBOL(screen_info); | ||
126 | #endif | ||
112 | struct apm_info apm_info; | 127 | struct apm_info apm_info; |
128 | EXPORT_SYMBOL(apm_info); | ||
113 | struct sys_desc_table_struct { | 129 | struct sys_desc_table_struct { |
114 | unsigned short length; | 130 | unsigned short length; |
115 | unsigned char table[0]; | 131 | unsigned char table[0]; |
116 | }; | 132 | }; |
117 | struct edid_info edid_info; | 133 | struct edid_info edid_info; |
118 | struct ist_info ist_info; | 134 | struct ist_info ist_info; |
135 | #if defined(CONFIG_X86_SPEEDSTEP_SMI) || \ | ||
136 | defined(CONFIG_X86_SPEEDSTEP_SMI_MODULE) | ||
137 | EXPORT_SYMBOL(ist_info); | ||
138 | #endif | ||
119 | struct e820map e820; | 139 | struct e820map e820; |
120 | 140 | ||
121 | extern void early_cpu_init(void); | 141 | extern void early_cpu_init(void); |
diff --git a/arch/i386/kernel/smp.c b/arch/i386/kernel/smp.c index 6223c33ac91c..68be7d0c7238 100644 --- a/arch/i386/kernel/smp.c +++ b/arch/i386/kernel/smp.c | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <linux/mc146818rtc.h> | 19 | #include <linux/mc146818rtc.h> |
20 | #include <linux/cache.h> | 20 | #include <linux/cache.h> |
21 | #include <linux/interrupt.h> | 21 | #include <linux/interrupt.h> |
22 | #include <linux/module.h> | ||
22 | 23 | ||
23 | #include <asm/mtrr.h> | 24 | #include <asm/mtrr.h> |
24 | #include <asm/tlbflush.h> | 25 | #include <asm/tlbflush.h> |
@@ -452,6 +453,7 @@ void flush_tlb_page(struct vm_area_struct * vma, unsigned long va) | |||
452 | 453 | ||
453 | preempt_enable(); | 454 | preempt_enable(); |
454 | } | 455 | } |
456 | EXPORT_SYMBOL(flush_tlb_page); | ||
455 | 457 | ||
456 | static void do_flush_tlb_all(void* info) | 458 | static void do_flush_tlb_all(void* info) |
457 | { | 459 | { |
@@ -547,6 +549,7 @@ int smp_call_function (void (*func) (void *info), void *info, int nonatomic, | |||
547 | 549 | ||
548 | return 0; | 550 | return 0; |
549 | } | 551 | } |
552 | EXPORT_SYMBOL(smp_call_function); | ||
550 | 553 | ||
551 | static void stop_this_cpu (void * dummy) | 554 | static void stop_this_cpu (void * dummy) |
552 | { | 555 | { |
diff --git a/arch/i386/kernel/smpboot.c b/arch/i386/kernel/smpboot.c index bc1bb6919e6a..aaad95e7f879 100644 --- a/arch/i386/kernel/smpboot.c +++ b/arch/i386/kernel/smpboot.c | |||
@@ -60,6 +60,9 @@ static int __initdata smp_b_stepping; | |||
60 | 60 | ||
61 | /* Number of siblings per CPU package */ | 61 | /* Number of siblings per CPU package */ |
62 | int smp_num_siblings = 1; | 62 | int smp_num_siblings = 1; |
63 | #ifdef CONFIG_X86_HT | ||
64 | EXPORT_SYMBOL(smp_num_siblings); | ||
65 | #endif | ||
63 | int phys_proc_id[NR_CPUS]; /* Package ID of each logical CPU */ | 66 | int phys_proc_id[NR_CPUS]; /* Package ID of each logical CPU */ |
64 | EXPORT_SYMBOL(phys_proc_id); | 67 | EXPORT_SYMBOL(phys_proc_id); |
65 | int cpu_core_id[NR_CPUS]; /* Core ID of each logical CPU */ | 68 | int cpu_core_id[NR_CPUS]; /* Core ID of each logical CPU */ |
@@ -67,13 +70,16 @@ EXPORT_SYMBOL(cpu_core_id); | |||
67 | 70 | ||
68 | /* bitmap of online cpus */ | 71 | /* bitmap of online cpus */ |
69 | cpumask_t cpu_online_map; | 72 | cpumask_t cpu_online_map; |
73 | EXPORT_SYMBOL(cpu_online_map); | ||
70 | 74 | ||
71 | cpumask_t cpu_callin_map; | 75 | cpumask_t cpu_callin_map; |
72 | cpumask_t cpu_callout_map; | 76 | cpumask_t cpu_callout_map; |
77 | EXPORT_SYMBOL(cpu_callout_map); | ||
73 | static cpumask_t smp_commenced_mask; | 78 | static cpumask_t smp_commenced_mask; |
74 | 79 | ||
75 | /* Per CPU bogomips and other parameters */ | 80 | /* Per CPU bogomips and other parameters */ |
76 | struct cpuinfo_x86 cpu_data[NR_CPUS] __cacheline_aligned; | 81 | struct cpuinfo_x86 cpu_data[NR_CPUS] __cacheline_aligned; |
82 | EXPORT_SYMBOL(cpu_data); | ||
77 | 83 | ||
78 | u8 x86_cpu_to_apicid[NR_CPUS] = | 84 | u8 x86_cpu_to_apicid[NR_CPUS] = |
79 | { [0 ... NR_CPUS-1] = 0xff }; | 85 | { [0 ... NR_CPUS-1] = 0xff }; |
@@ -885,8 +891,14 @@ static void smp_tune_scheduling (void) | |||
885 | static int boot_cpu_logical_apicid; | 891 | static int boot_cpu_logical_apicid; |
886 | /* Where the IO area was mapped on multiquad, always 0 otherwise */ | 892 | /* Where the IO area was mapped on multiquad, always 0 otherwise */ |
887 | void *xquad_portio; | 893 | void *xquad_portio; |
894 | #ifdef CONFIG_X86_NUMAQ | ||
895 | EXPORT_SYMBOL(xquad_portio); | ||
896 | #endif | ||
888 | 897 | ||
889 | cpumask_t cpu_sibling_map[NR_CPUS] __cacheline_aligned; | 898 | cpumask_t cpu_sibling_map[NR_CPUS] __cacheline_aligned; |
899 | #ifdef CONFIG_X86_HT | ||
900 | EXPORT_SYMBOL(cpu_sibling_map); | ||
901 | #endif | ||
890 | cpumask_t cpu_core_map[NR_CPUS] __cacheline_aligned; | 902 | cpumask_t cpu_core_map[NR_CPUS] __cacheline_aligned; |
891 | EXPORT_SYMBOL(cpu_core_map); | 903 | EXPORT_SYMBOL(cpu_core_map); |
892 | 904 | ||
diff --git a/arch/i386/kernel/time.c b/arch/i386/kernel/time.c index a0dcb7c87c30..8bc8363fbb4c 100644 --- a/arch/i386/kernel/time.c +++ b/arch/i386/kernel/time.c | |||
@@ -78,10 +78,12 @@ u64 jiffies_64 = INITIAL_JIFFIES; | |||
78 | EXPORT_SYMBOL(jiffies_64); | 78 | EXPORT_SYMBOL(jiffies_64); |
79 | 79 | ||
80 | unsigned long cpu_khz; /* Detected as we calibrate the TSC */ | 80 | unsigned long cpu_khz; /* Detected as we calibrate the TSC */ |
81 | EXPORT_SYMBOL(cpu_khz); | ||
81 | 82 | ||
82 | extern unsigned long wall_jiffies; | 83 | extern unsigned long wall_jiffies; |
83 | 84 | ||
84 | DEFINE_SPINLOCK(rtc_lock); | 85 | DEFINE_SPINLOCK(rtc_lock); |
86 | EXPORT_SYMBOL(rtc_lock); | ||
85 | 87 | ||
86 | DEFINE_SPINLOCK(i8253_lock); | 88 | DEFINE_SPINLOCK(i8253_lock); |
87 | EXPORT_SYMBOL(i8253_lock); | 89 | EXPORT_SYMBOL(i8253_lock); |
@@ -324,6 +326,8 @@ unsigned long get_cmos_time(void) | |||
324 | 326 | ||
325 | return retval; | 327 | return retval; |
326 | } | 328 | } |
329 | EXPORT_SYMBOL(get_cmos_time); | ||
330 | |||
327 | static void sync_cmos_clock(unsigned long dummy); | 331 | static void sync_cmos_clock(unsigned long dummy); |
328 | 332 | ||
329 | static struct timer_list sync_cmos_timer = | 333 | static struct timer_list sync_cmos_timer = |
diff --git a/arch/i386/kernel/traps.c b/arch/i386/kernel/traps.c index 83c579e82a81..7f729665d292 100644 --- a/arch/i386/kernel/traps.c +++ b/arch/i386/kernel/traps.c | |||
@@ -104,6 +104,7 @@ int register_die_notifier(struct notifier_block *nb) | |||
104 | spin_unlock_irqrestore(&die_notifier_lock, flags); | 104 | spin_unlock_irqrestore(&die_notifier_lock, flags); |
105 | return err; | 105 | return err; |
106 | } | 106 | } |
107 | EXPORT_SYMBOL(register_die_notifier); | ||
107 | 108 | ||
108 | static inline int valid_stack_ptr(struct thread_info *tinfo, void *p) | 109 | static inline int valid_stack_ptr(struct thread_info *tinfo, void *p) |
109 | { | 110 | { |
@@ -636,11 +637,13 @@ void set_nmi_callback(nmi_callback_t callback) | |||
636 | { | 637 | { |
637 | nmi_callback = callback; | 638 | nmi_callback = callback; |
638 | } | 639 | } |
640 | EXPORT_SYMBOL_GPL(set_nmi_callback); | ||
639 | 641 | ||
640 | void unset_nmi_callback(void) | 642 | void unset_nmi_callback(void) |
641 | { | 643 | { |
642 | nmi_callback = dummy_nmi_callback; | 644 | nmi_callback = dummy_nmi_callback; |
643 | } | 645 | } |
646 | EXPORT_SYMBOL_GPL(unset_nmi_callback); | ||
644 | 647 | ||
645 | #ifdef CONFIG_KPROBES | 648 | #ifdef CONFIG_KPROBES |
646 | fastcall void do_int3(struct pt_regs *regs, long error_code) | 649 | fastcall void do_int3(struct pt_regs *regs, long error_code) |
diff --git a/arch/i386/lib/dec_and_lock.c b/arch/i386/lib/dec_and_lock.c index ab43394dc775..8b81b2524fa6 100644 --- a/arch/i386/lib/dec_and_lock.c +++ b/arch/i386/lib/dec_and_lock.c | |||
@@ -8,6 +8,7 @@ | |||
8 | */ | 8 | */ |
9 | 9 | ||
10 | #include <linux/spinlock.h> | 10 | #include <linux/spinlock.h> |
11 | #include <linux/module.h> | ||
11 | #include <asm/atomic.h> | 12 | #include <asm/atomic.h> |
12 | 13 | ||
13 | int _atomic_dec_and_lock(atomic_t *atomic, spinlock_t *lock) | 14 | int _atomic_dec_and_lock(atomic_t *atomic, spinlock_t *lock) |
@@ -38,3 +39,4 @@ slow_path: | |||
38 | spin_unlock(lock); | 39 | spin_unlock(lock); |
39 | return 0; | 40 | return 0; |
40 | } | 41 | } |
42 | EXPORT_SYMBOL(_atomic_dec_and_lock); | ||
diff --git a/arch/i386/lib/delay.c b/arch/i386/lib/delay.c index eb0cdfe9280f..c49a6acbee56 100644 --- a/arch/i386/lib/delay.c +++ b/arch/i386/lib/delay.c | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <linux/config.h> | 13 | #include <linux/config.h> |
14 | #include <linux/sched.h> | 14 | #include <linux/sched.h> |
15 | #include <linux/delay.h> | 15 | #include <linux/delay.h> |
16 | #include <linux/module.h> | ||
16 | #include <asm/processor.h> | 17 | #include <asm/processor.h> |
17 | #include <asm/delay.h> | 18 | #include <asm/delay.h> |
18 | #include <asm/timer.h> | 19 | #include <asm/timer.h> |
@@ -47,3 +48,8 @@ void __ndelay(unsigned long nsecs) | |||
47 | { | 48 | { |
48 | __const_udelay(nsecs * 0x00005); /* 2**32 / 1000000000 (rounded up) */ | 49 | __const_udelay(nsecs * 0x00005); /* 2**32 / 1000000000 (rounded up) */ |
49 | } | 50 | } |
51 | |||
52 | EXPORT_SYMBOL(__delay); | ||
53 | EXPORT_SYMBOL(__const_udelay); | ||
54 | EXPORT_SYMBOL(__udelay); | ||
55 | EXPORT_SYMBOL(__ndelay); | ||
diff --git a/arch/i386/lib/mmx.c b/arch/i386/lib/mmx.c index 01f8b1a2cc84..2afda94dffd3 100644 --- a/arch/i386/lib/mmx.c +++ b/arch/i386/lib/mmx.c | |||
@@ -3,6 +3,7 @@ | |||
3 | #include <linux/string.h> | 3 | #include <linux/string.h> |
4 | #include <linux/sched.h> | 4 | #include <linux/sched.h> |
5 | #include <linux/hardirq.h> | 5 | #include <linux/hardirq.h> |
6 | #include <linux/module.h> | ||
6 | 7 | ||
7 | #include <asm/i387.h> | 8 | #include <asm/i387.h> |
8 | 9 | ||
@@ -397,3 +398,7 @@ void mmx_copy_page(void *to, void *from) | |||
397 | else | 398 | else |
398 | fast_copy_page(to, from); | 399 | fast_copy_page(to, from); |
399 | } | 400 | } |
401 | |||
402 | EXPORT_SYMBOL(_mmx_memcpy); | ||
403 | EXPORT_SYMBOL(mmx_clear_page); | ||
404 | EXPORT_SYMBOL(mmx_copy_page); | ||
diff --git a/arch/i386/lib/usercopy.c b/arch/i386/lib/usercopy.c index 51aa2bbb0269..4cf981d70f45 100644 --- a/arch/i386/lib/usercopy.c +++ b/arch/i386/lib/usercopy.c | |||
@@ -84,6 +84,7 @@ __strncpy_from_user(char *dst, const char __user *src, long count) | |||
84 | __do_strncpy_from_user(dst, src, count, res); | 84 | __do_strncpy_from_user(dst, src, count, res); |
85 | return res; | 85 | return res; |
86 | } | 86 | } |
87 | EXPORT_SYMBOL(__strncpy_from_user); | ||
87 | 88 | ||
88 | /** | 89 | /** |
89 | * strncpy_from_user: - Copy a NUL terminated string from userspace. | 90 | * strncpy_from_user: - Copy a NUL terminated string from userspace. |
@@ -111,7 +112,7 @@ strncpy_from_user(char *dst, const char __user *src, long count) | |||
111 | __do_strncpy_from_user(dst, src, count, res); | 112 | __do_strncpy_from_user(dst, src, count, res); |
112 | return res; | 113 | return res; |
113 | } | 114 | } |
114 | 115 | EXPORT_SYMBOL(strncpy_from_user); | |
115 | 116 | ||
116 | /* | 117 | /* |
117 | * Zero Userspace | 118 | * Zero Userspace |
@@ -157,6 +158,7 @@ clear_user(void __user *to, unsigned long n) | |||
157 | __do_clear_user(to, n); | 158 | __do_clear_user(to, n); |
158 | return n; | 159 | return n; |
159 | } | 160 | } |
161 | EXPORT_SYMBOL(clear_user); | ||
160 | 162 | ||
161 | /** | 163 | /** |
162 | * __clear_user: - Zero a block of memory in user space, with less checking. | 164 | * __clear_user: - Zero a block of memory in user space, with less checking. |
@@ -175,6 +177,7 @@ __clear_user(void __user *to, unsigned long n) | |||
175 | __do_clear_user(to, n); | 177 | __do_clear_user(to, n); |
176 | return n; | 178 | return n; |
177 | } | 179 | } |
180 | EXPORT_SYMBOL(__clear_user); | ||
178 | 181 | ||
179 | /** | 182 | /** |
180 | * strlen_user: - Get the size of a string in user space. | 183 | * strlen_user: - Get the size of a string in user space. |
@@ -218,6 +221,7 @@ long strnlen_user(const char __user *s, long n) | |||
218 | :"cc"); | 221 | :"cc"); |
219 | return res & mask; | 222 | return res & mask; |
220 | } | 223 | } |
224 | EXPORT_SYMBOL(strnlen_user); | ||
221 | 225 | ||
222 | #ifdef CONFIG_X86_INTEL_USERCOPY | 226 | #ifdef CONFIG_X86_INTEL_USERCOPY |
223 | static unsigned long | 227 | static unsigned long |
@@ -570,6 +574,7 @@ survive: | |||
570 | n = __copy_user_intel(to, from, n); | 574 | n = __copy_user_intel(to, from, n); |
571 | return n; | 575 | return n; |
572 | } | 576 | } |
577 | EXPORT_SYMBOL(__copy_to_user_ll); | ||
573 | 578 | ||
574 | unsigned long | 579 | unsigned long |
575 | __copy_from_user_ll(void *to, const void __user *from, unsigned long n) | 580 | __copy_from_user_ll(void *to, const void __user *from, unsigned long n) |
@@ -581,6 +586,7 @@ __copy_from_user_ll(void *to, const void __user *from, unsigned long n) | |||
581 | n = __copy_user_zeroing_intel(to, from, n); | 586 | n = __copy_user_zeroing_intel(to, from, n); |
582 | return n; | 587 | return n; |
583 | } | 588 | } |
589 | EXPORT_SYMBOL(__copy_from_user_ll); | ||
584 | 590 | ||
585 | /** | 591 | /** |
586 | * copy_to_user: - Copy a block of data into user space. | 592 | * copy_to_user: - Copy a block of data into user space. |
diff --git a/arch/i386/mm/discontig.c b/arch/i386/mm/discontig.c index 0efeb96ba5d4..f429c871e845 100644 --- a/arch/i386/mm/discontig.c +++ b/arch/i386/mm/discontig.c | |||
@@ -29,12 +29,14 @@ | |||
29 | #include <linux/highmem.h> | 29 | #include <linux/highmem.h> |
30 | #include <linux/initrd.h> | 30 | #include <linux/initrd.h> |
31 | #include <linux/nodemask.h> | 31 | #include <linux/nodemask.h> |
32 | #include <linux/module.h> | ||
32 | #include <asm/e820.h> | 33 | #include <asm/e820.h> |
33 | #include <asm/setup.h> | 34 | #include <asm/setup.h> |
34 | #include <asm/mmzone.h> | 35 | #include <asm/mmzone.h> |
35 | #include <bios_ebda.h> | 36 | #include <bios_ebda.h> |
36 | 37 | ||
37 | struct pglist_data *node_data[MAX_NUMNODES]; | 38 | struct pglist_data *node_data[MAX_NUMNODES]; |
39 | EXPORT_SYMBOL(node_data); | ||
38 | bootmem_data_t node0_bdata; | 40 | bootmem_data_t node0_bdata; |
39 | 41 | ||
40 | /* | 42 | /* |
@@ -63,6 +65,7 @@ unsigned long node_end_pfn[MAX_NUMNODES]; | |||
63 | * physnode_map[8- ] = -1; | 65 | * physnode_map[8- ] = -1; |
64 | */ | 66 | */ |
65 | s8 physnode_map[MAX_ELEMENTS] = { [0 ... (MAX_ELEMENTS - 1)] = -1}; | 67 | s8 physnode_map[MAX_ELEMENTS] = { [0 ... (MAX_ELEMENTS - 1)] = -1}; |
68 | EXPORT_SYMBOL(physnode_map); | ||
66 | 69 | ||
67 | void memory_present(int nid, unsigned long start, unsigned long end) | 70 | void memory_present(int nid, unsigned long start, unsigned long end) |
68 | { | 71 | { |
diff --git a/arch/i386/mm/highmem.c b/arch/i386/mm/highmem.c index fc4c4cad4e98..4b7aaf99d7ea 100644 --- a/arch/i386/mm/highmem.c +++ b/arch/i386/mm/highmem.c | |||
@@ -1,4 +1,5 @@ | |||
1 | #include <linux/highmem.h> | 1 | #include <linux/highmem.h> |
2 | #include <linux/module.h> | ||
2 | 3 | ||
3 | void *kmap(struct page *page) | 4 | void *kmap(struct page *page) |
4 | { | 5 | { |
@@ -87,3 +88,8 @@ struct page *kmap_atomic_to_page(void *ptr) | |||
87 | return pte_page(*pte); | 88 | return pte_page(*pte); |
88 | } | 89 | } |
89 | 90 | ||
91 | EXPORT_SYMBOL(kmap); | ||
92 | EXPORT_SYMBOL(kunmap); | ||
93 | EXPORT_SYMBOL(kmap_atomic); | ||
94 | EXPORT_SYMBOL(kunmap_atomic); | ||
95 | EXPORT_SYMBOL(kmap_atomic_to_page); | ||
diff --git a/arch/i386/mm/init.c b/arch/i386/mm/init.c index 48ebfab77a3c..3672e2ef51ae 100644 --- a/arch/i386/mm/init.c +++ b/arch/i386/mm/init.c | |||
@@ -295,6 +295,7 @@ static void __init set_highmem_pages_init(int bad_ppro) | |||
295 | #endif /* CONFIG_HIGHMEM */ | 295 | #endif /* CONFIG_HIGHMEM */ |
296 | 296 | ||
297 | unsigned long long __PAGE_KERNEL = _PAGE_KERNEL; | 297 | unsigned long long __PAGE_KERNEL = _PAGE_KERNEL; |
298 | EXPORT_SYMBOL(__PAGE_KERNEL); | ||
298 | unsigned long long __PAGE_KERNEL_EXEC = _PAGE_KERNEL_EXEC; | 299 | unsigned long long __PAGE_KERNEL_EXEC = _PAGE_KERNEL_EXEC; |
299 | 300 | ||
300 | #ifdef CONFIG_NUMA | 301 | #ifdef CONFIG_NUMA |
diff --git a/arch/i386/mm/ioremap.c b/arch/i386/mm/ioremap.c index ab542792b27b..d393eefc7052 100644 --- a/arch/i386/mm/ioremap.c +++ b/arch/i386/mm/ioremap.c | |||
@@ -11,6 +11,7 @@ | |||
11 | #include <linux/vmalloc.h> | 11 | #include <linux/vmalloc.h> |
12 | #include <linux/init.h> | 12 | #include <linux/init.h> |
13 | #include <linux/slab.h> | 13 | #include <linux/slab.h> |
14 | #include <linux/module.h> | ||
14 | #include <asm/io.h> | 15 | #include <asm/io.h> |
15 | #include <asm/fixmap.h> | 16 | #include <asm/fixmap.h> |
16 | #include <asm/cacheflush.h> | 17 | #include <asm/cacheflush.h> |
@@ -165,7 +166,7 @@ void __iomem * __ioremap(unsigned long phys_addr, unsigned long size, unsigned l | |||
165 | } | 166 | } |
166 | return (void __iomem *) (offset + (char __iomem *)addr); | 167 | return (void __iomem *) (offset + (char __iomem *)addr); |
167 | } | 168 | } |
168 | 169 | EXPORT_SYMBOL(__ioremap); | |
169 | 170 | ||
170 | /** | 171 | /** |
171 | * ioremap_nocache - map bus memory into CPU space | 172 | * ioremap_nocache - map bus memory into CPU space |
@@ -222,6 +223,7 @@ void __iomem *ioremap_nocache (unsigned long phys_addr, unsigned long size) | |||
222 | 223 | ||
223 | return p; | 224 | return p; |
224 | } | 225 | } |
226 | EXPORT_SYMBOL(ioremap_nocache); | ||
225 | 227 | ||
226 | void iounmap(volatile void __iomem *addr) | 228 | void iounmap(volatile void __iomem *addr) |
227 | { | 229 | { |
@@ -255,6 +257,7 @@ out_unlock: | |||
255 | write_unlock(&vmlist_lock); | 257 | write_unlock(&vmlist_lock); |
256 | kfree(p); | 258 | kfree(p); |
257 | } | 259 | } |
260 | EXPORT_SYMBOL(iounmap); | ||
258 | 261 | ||
259 | void __init *bt_ioremap(unsigned long phys_addr, unsigned long size) | 262 | void __init *bt_ioremap(unsigned long phys_addr, unsigned long size) |
260 | { | 263 | { |
diff --git a/arch/i386/pci/pcbios.c b/arch/i386/pci/pcbios.c index 141421b673b0..b9d65f0bc2d1 100644 --- a/arch/i386/pci/pcbios.c +++ b/arch/i386/pci/pcbios.c | |||
@@ -4,6 +4,7 @@ | |||
4 | 4 | ||
5 | #include <linux/pci.h> | 5 | #include <linux/pci.h> |
6 | #include <linux/init.h> | 6 | #include <linux/init.h> |
7 | #include <linux/module.h> | ||
7 | #include "pci.h" | 8 | #include "pci.h" |
8 | #include "pci-functions.h" | 9 | #include "pci-functions.h" |
9 | 10 | ||
@@ -456,7 +457,7 @@ struct irq_routing_table * __devinit pcibios_get_irq_routing_table(void) | |||
456 | free_page(page); | 457 | free_page(page); |
457 | return rt; | 458 | return rt; |
458 | } | 459 | } |
459 | 460 | EXPORT_SYMBOL(pcibios_get_irq_routing_table); | |
460 | 461 | ||
461 | int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq) | 462 | int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq) |
462 | { | 463 | { |
@@ -473,6 +474,7 @@ int pcibios_set_irq_routing(struct pci_dev *dev, int pin, int irq) | |||
473 | "S" (&pci_indirect)); | 474 | "S" (&pci_indirect)); |
474 | return !(ret & 0xff00); | 475 | return !(ret & 0xff00); |
475 | } | 476 | } |
477 | EXPORT_SYMBOL(pcibios_set_irq_routing); | ||
476 | 478 | ||
477 | static int __init pci_pcbios_init(void) | 479 | static int __init pci_pcbios_init(void) |
478 | { | 480 | { |