o kernel/ksyms.c: move remaining fs/*.c EXPORT_SYMBOLs
[linux-2.6/history.git] / kernel / ksyms.c
blob4cbb0da18de71eccb87d32f00f26be42b667a581
1 /*
2 * Herein lies all the functions/variables that are "exported" for linkage
3 * with dynamically loaded kernel modules.
4 * Jon.
6 * - Stacked module support and unified symbol table added (June 1994)
7 * - External symbol table support added (December 1994)
8 * - Versions on symbols added (December 1994)
9 * by Bjorn Ekwall <bj0rn@blox.se>
12 #include <linux/config.h>
13 #include <linux/slab.h>
14 #include <linux/module.h>
15 #include <linux/blkdev.h>
16 #include <linux/cdrom.h>
17 #include <linux/kernel_stat.h>
18 #include <linux/vmalloc.h>
19 #include <linux/sys.h>
20 #include <linux/utsname.h>
21 #include <linux/interrupt.h>
22 #include <linux/ioport.h>
23 #include <linux/serial.h>
24 #include <linux/delay.h>
25 #include <linux/random.h>
26 #include <linux/reboot.h>
27 #include <linux/pagemap.h>
28 #include <linux/sysctl.h>
29 #include <linux/hdreg.h>
30 #include <linux/skbuff.h>
31 #include <linux/genhd.h>
32 #include <linux/blkpg.h>
33 #include <linux/swap.h>
34 #include <linux/pagevec.h>
35 #include <linux/ctype.h>
36 #include <linux/file.h>
37 #include <linux/console.h>
38 #include <linux/poll.h>
39 #include <linux/mmzone.h>
40 #include <linux/mm.h>
41 #include <linux/capability.h>
42 #include <linux/highuid.h>
43 #include <linux/uio.h>
44 #include <linux/tty.h>
45 #include <linux/in6.h>
46 #include <linux/binfmts.h>
47 #include <linux/namei.h>
48 #include <linux/buffer_head.h>
49 #include <linux/root_dev.h>
50 #include <linux/percpu.h>
51 #include <linux/smp_lock.h>
52 #include <linux/dnotify.h>
53 #include <linux/mount.h>
54 #include <linux/ptrace.h>
55 #include <linux/time.h>
56 #include <linux/backing-dev.h>
57 #include <linux/percpu_counter.h>
58 #include <asm/checksum.h>
60 #if defined(CONFIG_PROC_FS)
61 #include <linux/proc_fs.h>
62 #endif
63 #ifdef CONFIG_KMOD
64 #include <linux/kmod.h>
65 #endif
67 extern struct timezone sys_tz;
69 extern int panic_timeout;
71 /* process memory management */
72 EXPORT_SYMBOL(do_mmap_pgoff);
73 EXPORT_SYMBOL(do_munmap);
74 EXPORT_SYMBOL(do_brk);
75 EXPORT_SYMBOL(exit_mm);
76 EXPORT_SYMBOL_GPL(exit_fs);
77 EXPORT_SYMBOL_GPL(copy_fs_struct);
79 /* internal kernel memory management */
80 EXPORT_SYMBOL(__alloc_pages);
81 EXPORT_SYMBOL(__get_free_pages);
82 EXPORT_SYMBOL(get_zeroed_page);
83 EXPORT_SYMBOL(__page_cache_release);
84 EXPORT_SYMBOL(__pagevec_lru_add);
85 EXPORT_SYMBOL(__free_pages);
86 EXPORT_SYMBOL(free_pages);
87 EXPORT_SYMBOL(num_physpages);
88 EXPORT_SYMBOL(kmem_find_general_cachep);
89 EXPORT_SYMBOL(kmem_cache_create);
90 EXPORT_SYMBOL(kmem_cache_destroy);
91 EXPORT_SYMBOL(kmem_cache_shrink);
92 EXPORT_SYMBOL(kmem_cache_alloc);
93 EXPORT_SYMBOL(kmem_cache_free);
94 EXPORT_SYMBOL(kmem_cache_size);
95 EXPORT_SYMBOL(set_shrinker);
96 EXPORT_SYMBOL(remove_shrinker);
97 EXPORT_SYMBOL(malloc_sizes);
98 EXPORT_SYMBOL(__kmalloc);
99 EXPORT_SYMBOL(kfree);
100 #ifdef CONFIG_SMP
101 EXPORT_SYMBOL(__alloc_percpu);
102 EXPORT_SYMBOL(free_percpu);
103 EXPORT_SYMBOL(percpu_counter_mod);
104 #endif
105 EXPORT_SYMBOL(vfree);
106 EXPORT_SYMBOL(__vmalloc);
107 EXPORT_SYMBOL(vmalloc);
108 EXPORT_SYMBOL(vmalloc_32);
109 EXPORT_SYMBOL(vmap);
110 EXPORT_SYMBOL(vunmap);
111 EXPORT_SYMBOL(vmalloc_to_page);
112 EXPORT_SYMBOL(remap_page_range);
113 #ifndef CONFIG_DISCONTIGMEM
114 EXPORT_SYMBOL(contig_page_data);
115 EXPORT_SYMBOL(mem_map);
116 EXPORT_SYMBOL(max_mapnr);
117 #endif
118 EXPORT_SYMBOL(high_memory);
119 EXPORT_SYMBOL(vmtruncate);
120 EXPORT_SYMBOL(find_vma);
121 EXPORT_SYMBOL(get_unmapped_area);
122 EXPORT_SYMBOL(init_mm);
123 EXPORT_SYMBOL(blk_queue_bounce);
124 EXPORT_SYMBOL(blk_congestion_wait);
125 #ifdef CONFIG_HIGHMEM
126 EXPORT_SYMBOL(kmap_high);
127 EXPORT_SYMBOL(kunmap_high);
128 EXPORT_SYMBOL(highmem_start_page);
129 EXPORT_SYMBOL(kmap_prot);
130 EXPORT_SYMBOL(kmap_pte);
131 #endif
132 #ifdef HASHED_PAGE_VIRTUAL
133 EXPORT_SYMBOL(page_address);
134 #endif
135 EXPORT_SYMBOL(get_user_pages);
137 /* filesystem internal functions */
138 EXPORT_SYMBOL(dcache_lock);
139 EXPORT_SYMBOL(invalidate_inode_pages);
140 EXPORT_SYMBOL_GPL(invalidate_inode_pages2);
141 EXPORT_SYMBOL(truncate_inode_pages);
142 EXPORT_SYMBOL(file_ra_state_init);
143 EXPORT_SYMBOL(ROOT_DEV);
144 EXPORT_SYMBOL(read_cache_pages);
145 EXPORT_SYMBOL(mark_page_accessed);
147 /* for stackable file systems (lofs, wrapfs, cryptfs, etc.) */
148 EXPORT_SYMBOL(lock_page);
150 /* device registration */
151 EXPORT_SYMBOL(register_blkdev);
152 EXPORT_SYMBOL(unregister_blkdev);
153 EXPORT_SYMBOL(tty_register_driver);
154 EXPORT_SYMBOL(tty_unregister_driver);
155 EXPORT_SYMBOL(tty_std_termios);
157 /* block device driver support */
158 EXPORT_SYMBOL_GPL(default_backing_dev_info);
160 /* tty routines */
161 EXPORT_SYMBOL(tty_wait_until_sent);
162 EXPORT_SYMBOL(tty_flip_buffer_push);
164 /* interrupt handling */
165 EXPORT_SYMBOL(request_irq);
166 EXPORT_SYMBOL(free_irq);
168 /* waitqueue handling */
169 EXPORT_SYMBOL(add_wait_queue);
170 EXPORT_SYMBOL(add_wait_queue_exclusive);
171 EXPORT_SYMBOL(remove_wait_queue);
172 EXPORT_SYMBOL(prepare_to_wait);
173 EXPORT_SYMBOL(prepare_to_wait_exclusive);
174 EXPORT_SYMBOL(finish_wait);
175 EXPORT_SYMBOL(autoremove_wake_function);
177 /* The notion of irq probe/assignment is foreign to S/390 */
179 #if !defined(CONFIG_ARCH_S390)
180 EXPORT_SYMBOL(probe_irq_on);
181 EXPORT_SYMBOL(probe_irq_off);
182 #endif
184 #ifdef CONFIG_SMP
185 EXPORT_SYMBOL(del_timer_sync);
186 #endif
187 EXPORT_SYMBOL(del_timer);
188 EXPORT_SYMBOL(mod_timer);
189 EXPORT_SYMBOL(__mod_timer);
191 #ifdef HAVE_DISABLE_HLT
192 EXPORT_SYMBOL(disable_hlt);
193 EXPORT_SYMBOL(enable_hlt);
194 #endif
196 /* resource handling */
197 EXPORT_SYMBOL(request_resource);
198 EXPORT_SYMBOL(release_resource);
199 EXPORT_SYMBOL(allocate_resource);
200 EXPORT_SYMBOL(__request_region);
201 EXPORT_SYMBOL(__check_region);
202 EXPORT_SYMBOL(__release_region);
203 EXPORT_SYMBOL(ioport_resource);
204 EXPORT_SYMBOL(iomem_resource);
206 /* process management */
207 EXPORT_SYMBOL(complete_and_exit);
208 EXPORT_SYMBOL(schedule_timeout);
209 #if defined(CONFIG_SMP) || defined(CONFIG_PREEMPT)
210 EXPORT_SYMBOL(kernel_flag);
211 #endif
212 EXPORT_SYMBOL(jiffies);
213 EXPORT_SYMBOL(jiffies_64);
214 EXPORT_SYMBOL(xtime);
215 EXPORT_SYMBOL(xtime_lock);
216 EXPORT_SYMBOL(do_gettimeofday);
217 EXPORT_SYMBOL(do_settimeofday);
218 #if (BITS_PER_LONG < 64)
219 EXPORT_SYMBOL(get_jiffies_64);
220 #endif
221 #if !defined(__ia64__)
222 EXPORT_SYMBOL(loops_per_jiffy);
223 #endif
225 /* misc */
226 EXPORT_SYMBOL(panic);
227 EXPORT_SYMBOL(panic_notifier_list);
228 EXPORT_SYMBOL(panic_timeout);
229 EXPORT_SYMBOL(sprintf);
230 EXPORT_SYMBOL(snprintf);
231 EXPORT_SYMBOL(sscanf);
232 EXPORT_SYMBOL(vsprintf);
233 EXPORT_SYMBOL(vsnprintf);
234 EXPORT_SYMBOL(vsscanf);
235 EXPORT_SYMBOL(simple_strtoull);
236 EXPORT_SYMBOL(simple_strtoul);
237 EXPORT_SYMBOL(simple_strtol);
238 EXPORT_SYMBOL(system_utsname); /* UTS data */
239 EXPORT_SYMBOL(uts_sem); /* UTS semaphore */
240 EXPORT_SYMBOL(machine_restart);
241 EXPORT_SYMBOL(machine_halt);
242 EXPORT_SYMBOL(machine_power_off);
243 EXPORT_SYMBOL(_ctype);
244 EXPORT_SYMBOL(secure_tcp_sequence_number);
245 EXPORT_SYMBOL(get_random_bytes);
246 EXPORT_SYMBOL(securebits);
247 EXPORT_SYMBOL(cap_bset);
248 EXPORT_SYMBOL(daemonize);
249 EXPORT_SYMBOL(csum_partial); /* for networking and md */
251 /* Miscellaneous access points */
252 EXPORT_SYMBOL(si_meminfo);
254 /* Added to make file system as module */
255 EXPORT_SYMBOL(sys_tz);
257 #ifdef CONFIG_UID16
258 EXPORT_SYMBOL(overflowuid);
259 EXPORT_SYMBOL(overflowgid);
260 #endif
261 EXPORT_SYMBOL(fs_overflowuid);
262 EXPORT_SYMBOL(fs_overflowgid);
264 /* library functions */
265 EXPORT_SYMBOL(strnicmp);
266 EXPORT_SYMBOL(strspn);
267 EXPORT_SYMBOL(strsep);
269 /* software interrupts */
270 EXPORT_SYMBOL(tasklet_init);
271 EXPORT_SYMBOL(tasklet_kill);
272 EXPORT_SYMBOL(do_softirq);
273 EXPORT_SYMBOL(raise_softirq);
274 EXPORT_SYMBOL(open_softirq);
275 EXPORT_SYMBOL(raise_softirq_irqoff);
276 EXPORT_SYMBOL(__tasklet_schedule);
277 EXPORT_SYMBOL(__tasklet_hi_schedule);
279 /* init task, for moving kthread roots - ought to export a function ?? */
280 EXPORT_SYMBOL(init_task);
282 EXPORT_SYMBOL(tasklist_lock);
283 EXPORT_SYMBOL(find_task_by_pid);
284 EXPORT_SYMBOL(next_thread);
285 #if defined(CONFIG_SMP) && defined(__GENERIC_PER_CPU)
286 EXPORT_SYMBOL(__per_cpu_offset);
287 #endif
289 /* debug */
290 EXPORT_SYMBOL(dump_stack);
291 EXPORT_SYMBOL(ptrace_notify);
292 EXPORT_SYMBOL(console_printk);
294 EXPORT_SYMBOL(current_kernel_time);