1
2
3
4
5
6
7
8
9
10
11
12 #include <linux/autoconf.h>
13 #include <linux/module.h>
14 #include <linux/kernel.h>
15 #include <linux/fs.h>
16 #include <linux/blkdev.h>
17 #include <linux/sched.h>
18 #include <linux/mm.h>
19 #include <linux/malloc.h>
20 #include <linux/ptrace.h>
21 #include <linux/sys.h>
22 #include <linux/utsname.h>
23 #include <linux/interrupt.h>
24 #include <linux/ioport.h>
25 #include <linux/timer.h>
26 #include <linux/binfmts.h>
27 #include <linux/personality.h>
28 #include <linux/termios.h>
29 #include <linux/tqueue.h>
30 #include <linux/tty.h>
31 #include <linux/serial.h>
32 #include <linux/locks.h>
33 #include <linux/string.h>
34 #include <linux/delay.h>
35 #include <linux/config.h>
36
37 #ifdef CONFIG_NET
38 #include <linux/net.h>
39 #include <linux/netdevice.h>
40 #include <net/eth.h>
41 #ifdef CONFIG_INET
42 #include <linux/ip.h>
43 #include <linux/etherdevice.h>
44 #include <net/protocol.h>
45 #include <net/arp.h>
46 #include <net/tcp.h>
47 #if defined(CONFIG_PPP) || defined(CONFIG_SLIP)
48 #include "../drivers/net/slhc.h"
49 #endif
50 #endif
51 #endif
52 #ifdef CONFIG_PCI
53 #include <linux/bios32.h>
54 #include <linux/pci.h>
55 #endif
56 #if defined(CONFIG_MSDOS_FS) && !defined(CONFIG_UMSDOS_FS)
57 #include <linux/msdos_fs.h>
58 #endif
59
60 #if defined(CONFIG_PROC_FS)
61 #include <linux/proc_fs.h>
62 #endif
63
64 #include <asm/irq.h>
65 extern char *get_options(char *str, int *ints);
66 extern void set_device_ro(int dev,int flag);
67 extern struct file_operations * get_blkfops(unsigned int);
68
69 extern void *sys_call_table;
70
71 #ifdef CONFIG_FTAPE
72 extern char * ftape_big_buffer;
73 #endif
74
75 #ifdef CONFIG_SCSI
76 #include "../drivers/scsi/scsi.h"
77 #include "../drivers/scsi/hosts.h"
78 #include "../drivers/scsi/constants.h"
79
80 extern int generic_proc_info(char *, char **, off_t, int, int, int);
81 #endif
82
83 int (* dispatch_scsi_info_ptr) (int ino, char *buffer, char **start,
84 off_t offset, int length,
85 int inode, int func) = 0;
86
87 #if defined(CONFIG_PROC_FS)
88 extern struct proc_dir_entry scsi_dir[];
89 extern struct proc_dir_entry scsi_hba_dir[];
90 #endif
91
92 extern int sys_tz;
93 extern int request_dma(unsigned int dmanr, char * deviceID);
94 extern void free_dma(unsigned int dmanr);
95
96 extern int close_fp(struct file *filp);
97 extern void (* iABI_hook)(struct pt_regs * regs);
98
99 struct symbol_table symbol_table = {
100 #include <linux/symtab_begin.h>
101 #ifdef CONFIG_MODVERSIONS
102 { (void *)1 ,
103 SYMBOL_NAME_STR (Using_Versions) },
104 #endif
105
106 X(rename_module_symbol),
107 X(register_symtab),
108 X(get_options),
109
110
111
112 #ifndef EISA_bus__is_a_macro
113 X(EISA_bus),
114 #endif
115 #ifndef MCA_bus__is_a_macro
116 X(MCA_bus),
117 #endif
118 #ifndef wp_works_ok__is_a_macro
119 X(wp_works_ok),
120 #endif
121
122 #ifdef CONFIG_PCI
123
124 X(pcibios_present),
125 X(pcibios_find_class),
126 X(pcibios_find_device),
127 X(pcibios_read_config_byte),
128 X(pcibios_read_config_word),
129 X(pcibios_read_config_dword),
130 X(pcibios_strerror),
131 X(pcibios_write_config_byte),
132 X(pcibios_write_config_word),
133 X(pcibios_write_config_dword),
134 #endif
135
136
137 X(verify_area),
138 X(do_mmap),
139 X(do_munmap),
140 X(zeromap_page_range),
141 X(unmap_page_range),
142 X(insert_vm_struct),
143 X(merge_segments),
144
145
146 X(__get_free_pages),
147 X(free_pages),
148 X(kmalloc),
149 X(kfree_s),
150 X(vmalloc),
151 X(vfree),
152
153
154 X(getname),
155 X(putname),
156 X(__iget),
157 X(iput),
158 X(namei),
159 X(lnamei),
160 X(open_namei),
161 X(close_fp),
162 X(check_disk_change),
163 X(invalidate_buffers),
164 X(invalidate_inodes),
165 X(fsync_dev),
166 X(permission),
167 X(inode_setattr),
168 X(inode_change_ok),
169 X(generic_mmap),
170 X(set_blocksize),
171 X(getblk),
172 X(bread),
173 X(breada),
174 X(brelse),
175 X(ll_rw_block),
176 X(__wait_on_buffer),
177 X(dcache_lookup),
178 X(dcache_add),
179 X(aout_core_dump),
180
181
182 X(register_chrdev),
183 X(unregister_chrdev),
184 X(register_blkdev),
185 X(unregister_blkdev),
186 X(tty_register_driver),
187 X(tty_unregister_driver),
188 X(tty_std_termios),
189
190
191 X(block_read),
192 X(block_write),
193 X(block_fsync),
194 X(wait_for_request),
195 X(blksize_size),
196 X(hardsect_size),
197 X(blk_size),
198 X(blk_dev),
199 X(is_read_only),
200 X(set_device_ro),
201 X(bmap),
202 X(sync_dev),
203 X(get_blkfops),
204
205
206 X(register_serial),
207 X(unregister_serial),
208
209
210 X(tty_hangup),
211 X(tty_wait_until_sent),
212 X(tty_check_change),
213 X(tty_hung_up_p),
214
215
216 X(register_filesystem),
217 X(unregister_filesystem),
218
219
220 X(register_binfmt),
221 X(unregister_binfmt),
222
223
224 X(lookup_exec_domain),
225 X(register_exec_domain),
226 X(unregister_exec_domain),
227
228
229 X(request_irq),
230 X(free_irq),
231 X(enable_irq),
232 X(disable_irq),
233 X(bh_active),
234 X(bh_mask),
235 X(bh_base),
236 X(add_timer),
237 X(del_timer),
238 X(tq_timer),
239 X(tq_immediate),
240 X(tq_scheduler),
241 X(tq_last),
242 X(timer_active),
243 X(timer_table),
244
245
246 X(request_dma),
247 X(free_dma),
248 #ifdef HAVE_DISABLE_HLT
249 X(disable_hlt),
250 X(enable_hlt),
251 #endif
252
253
254 X(check_region),
255 X(request_region),
256 X(release_region),
257
258
259 X(wake_up),
260 X(wake_up_interruptible),
261 X(sleep_on),
262 X(interruptible_sleep_on),
263 X(schedule),
264 X(current),
265 X(jiffies),
266 X(xtime),
267 X(loops_per_sec),
268 X(need_resched),
269 X(kill_proc),
270 X(kill_pg),
271 X(kill_sl),
272
273
274 X(panic),
275 X(printk),
276 X(sprintf),
277 X(vsprintf),
278 X(simple_strtoul),
279 X(system_utsname),
280 X(sys_call_table),
281
282
283 X(send_sig),
284
285
286 X(setup_arg_pages),
287 X(copy_strings),
288 X(create_tables),
289 X(do_execve),
290 X(flush_old_exec),
291 X(open_inode),
292 X(read_exec),
293
294
295 X(si_meminfo),
296 #ifdef CONFIG_NET
297
298 X(sock_register),
299 X(sock_unregister),
300
301 #ifdef CONFIG_INET
302 X(inet_add_protocol),
303 X(inet_del_protocol),
304 #if defined(CONFIG_PPP) || defined(CONFIG_SLIP)
305
306 X(slhc_init),
307 X(slhc_free),
308 X(slhc_remember),
309 X(slhc_compress),
310 X(slhc_uncompress),
311 #endif
312 #endif
313
314 X(register_netdevice_notifier),
315 X(unregister_netdevice_notifier),
316 #endif
317
318 #ifdef CONFIG_FTAPE
319
320 X(ftape_big_buffer),
321 #endif
322 #ifdef CONFIG_INET
323
324 X(register_netdev),
325 X(unregister_netdev),
326 X(ether_setup),
327 X(eth_type_trans),
328 X(alloc_skb),
329 X(kfree_skb),
330 X(dev_alloc_skb),
331 X(dev_kfree_skb),
332 X(netif_rx),
333 X(dev_rint),
334 X(dev_tint),
335 X(irq2dev_map),
336 X(dev_add_pack),
337 X(dev_remove_pack),
338 X(dev_get),
339 X(dev_ioctl),
340 X(dev_queue_xmit),
341 X(dev_base),
342 X(dev_close),
343 X(arp_find),
344 X(n_tty_ioctl),
345 X(tty_register_ldisc),
346 X(kill_fasync),
347 #endif
348 #ifdef CONFIG_SCSI
349
350
351
352
353
354
355
356
357
358
359 X(in_scan_scsis),
360 X(scsi_register_module),
361 X(scsi_unregister_module),
362 X(scsi_free),
363 X(scsi_malloc),
364 X(scsi_register),
365 X(scsi_unregister),
366 X(scsicam_bios_param),
367 X(allocate_device),
368 X(scsi_do_cmd),
369 X(scsi_command_size),
370 X(scsi_init_malloc),
371 X(scsi_init_free),
372 X(scsi_ioctl),
373 X(print_command),
374 X(print_msg),
375 X(print_status),
376 X(print_sense),
377 X(dma_free_sectors),
378 X(kernel_scsi_ioctl),
379 X(need_isa_buffer),
380 X(request_queueable),
381 X(dispatch_scsi_info_ptr),
382 X(generic_proc_info),
383 X(scsi_devices),
384 X(free_pages),
385 X(intr_count),
386 X(mem_map),
387 X(print_msg),
388 X(print_status),
389 X(gendisk_head),
390 X(resetup_one_dev),
391 #else
392
393
394
395
396 X(intr_count),
397 X(mem_map),
398 X(gendisk_head),
399 X(resetup_one_dev),
400
401 #if defined(CONFIG_PROC_FS)
402 X(scsi_dir),
403 X(scsi_hba_dir),
404 #endif
405 X(dispatch_scsi_info_ptr),
406 #endif
407
408 X(set_writetime),
409 X(sys_tz),
410 X(__wait_on_super),
411 X(file_fsync),
412 X(clear_inode),
413 X(refile_buffer),
414 X(___strtok),
415 X(init_fifo),
416 X(super_blocks),
417 X(chrdev_inode_operations),
418 X(blkdev_inode_operations),
419 X(read_ahead),
420 X(get_hash_table),
421 X(get_empty_inode),
422 X(insert_inode_hash),
423 X(event),
424 X(__down),
425 #if defined(CONFIG_MSDOS_FS) && !defined(CONFIG_UMSDOS_FS)
426
427 X(msdos_bmap),
428 X(msdos_create),
429 X(msdos_file_read),
430 X(msdos_file_write),
431 X(msdos_lookup),
432 X(msdos_mkdir),
433 X(msdos_mmap),
434 X(msdos_put_inode),
435 X(msdos_put_super),
436 X(msdos_read_inode),
437 X(msdos_read_super),
438 X(msdos_readdir),
439 X(msdos_rename),
440 X(msdos_rmdir),
441 X(msdos_smap),
442 X(msdos_statfs),
443 X(msdos_truncate),
444 X(msdos_unlink),
445 X(msdos_unlink_umsdos),
446 X(msdos_write_inode),
447 #endif
448
449
450
451
452 #include <linux/symtab_end.h>
453 };
454
455
456
457