Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / arch / ia64 / kernel / ia64_ksyms.c
1 /*
2  * Architecture-specific kernel symbols
3  *
4  * Don't put any exports here unless it's defined in an assembler file.
5  * All other exports should be put directly after the definition.
6  */
7
8 #include <linux/config.h>
9 #include <linux/module.h>
10
11 #include <linux/string.h>
12 EXPORT_SYMBOL(memset);
13 EXPORT_SYMBOL(memcpy);
14 EXPORT_SYMBOL(strlen);
15
16 #include <asm/checksum.h>
17 EXPORT_SYMBOL(ip_fast_csum);            /* hand-coded assembly */
18
19 #include <asm/semaphore.h>
20 EXPORT_SYMBOL(__down);
21 EXPORT_SYMBOL(__down_interruptible);
22 EXPORT_SYMBOL(__down_trylock);
23 EXPORT_SYMBOL(__up);
24
25 #include <asm/page.h>
26 EXPORT_SYMBOL(clear_page);
27
28 #ifdef CONFIG_VIRTUAL_MEM_MAP
29 #include <linux/bootmem.h>
30 EXPORT_SYMBOL(min_low_pfn);     /* defined by bootmem.c, but not exported by generic code */
31 EXPORT_SYMBOL(max_low_pfn);     /* defined by bootmem.c, but not exported by generic code */
32 #endif
33
34 #include <asm/processor.h>
35 EXPORT_SYMBOL(per_cpu__cpu_info);
36 #ifdef CONFIG_SMP
37 EXPORT_SYMBOL(per_cpu__local_per_cpu_offset);
38 #endif
39
40 #include <asm/uaccess.h>
41 EXPORT_SYMBOL(__copy_user);
42 EXPORT_SYMBOL(__do_clear_user);
43 EXPORT_SYMBOL(__strlen_user);
44 EXPORT_SYMBOL(__strncpy_from_user);
45 EXPORT_SYMBOL(__strnlen_user);
46
47 #define __KERNEL_SYSCALLS__
48 #include <asm/unistd.h>
49 EXPORT_SYMBOL_GPL(sys_execve);
50 EXPORT_SYMBOL_GPL(clone);
51
52 /* from arch/ia64/lib */
53 extern void __divsi3(void);
54 extern void __udivsi3(void);
55 extern void __modsi3(void);
56 extern void __umodsi3(void);
57 extern void __divdi3(void);
58 extern void __udivdi3(void);
59 extern void __moddi3(void);
60 extern void __umoddi3(void);
61
62 EXPORT_SYMBOL(__divsi3);
63 EXPORT_SYMBOL(__udivsi3);
64 EXPORT_SYMBOL(__modsi3);
65 EXPORT_SYMBOL(__umodsi3);
66 EXPORT_SYMBOL(__divdi3);
67 EXPORT_SYMBOL(__udivdi3);
68 EXPORT_SYMBOL(__moddi3);
69 EXPORT_SYMBOL(__umoddi3);
70
71 #if defined(CONFIG_MD_RAID5) || defined(CONFIG_MD_RAID5_MODULE)
72 extern void xor_ia64_2(void);
73 extern void xor_ia64_3(void);
74 extern void xor_ia64_4(void);
75 extern void xor_ia64_5(void);
76
77 EXPORT_SYMBOL(xor_ia64_2);
78 EXPORT_SYMBOL(xor_ia64_3);
79 EXPORT_SYMBOL(xor_ia64_4);
80 EXPORT_SYMBOL(xor_ia64_5);
81 #endif
82
83 #include <asm/pal.h>
84 EXPORT_SYMBOL(ia64_pal_call_phys_stacked);
85 EXPORT_SYMBOL(ia64_pal_call_phys_static);
86 EXPORT_SYMBOL(ia64_pal_call_stacked);
87 EXPORT_SYMBOL(ia64_pal_call_static);
88 EXPORT_SYMBOL(ia64_load_scratch_fpregs);
89 EXPORT_SYMBOL(ia64_save_scratch_fpregs);
90
91 #include <asm/unwind.h>
92 EXPORT_SYMBOL(unw_init_running);
93
94 #include <linux/efi.h>
95 EXPORT_SYMBOL_GPL(efi_mem_type);
96
97 #ifdef ASM_SUPPORTED
98 # ifdef CONFIG_SMP
99 #  if (__GNUC__ == 3 && __GNUC_MINOR__ < 3)
100 /*
101  * This is not a normal routine and we don't want a function descriptor for it, so we use
102  * a fake declaration here.
103  */
104 extern char ia64_spinlock_contention_pre3_4;
105 EXPORT_SYMBOL(ia64_spinlock_contention_pre3_4);
106 #  else
107 /*
108  * This is not a normal routine and we don't want a function descriptor for it, so we use
109  * a fake declaration here.
110  */
111 extern char ia64_spinlock_contention;
112 EXPORT_SYMBOL(ia64_spinlock_contention);
113 #  endif
114 # endif
115 #endif
116
117 extern char ia64_ivt[];
118 EXPORT_SYMBOL(ia64_ivt);