1/* 2 * Herein lies all the functions/variables that are "exported" for linkage 3 * with dynamically loaded kernel modules. 4 * Jon. 5 * 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> 10 */ 11 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/locks.h> 25#include <linux/delay.h> 26#include <linux/random.h> 27#include <linux/reboot.h> 28#include <linux/pagemap.h> 29#include <linux/sysctl.h> 30#include <linux/hdreg.h> 31#include <linux/skbuff.h> 32#include <linux/genhd.h> 33#include <linux/blkpg.h> 34#include <linux/swap.h> 35#include <linux/ctype.h> 36#include <linux/file.h> 37#include <linux/iobuf.h> 38#include <linux/console.h> 39#include <linux/poll.h> 40#include <linux/mmzone.h> 41#include <linux/mm.h> 42#include <linux/capability.h> 43#include <linux/highuid.h> 44#include <linux/brlock.h> 45#include <linux/fs.h> 46#include <linux/tty.h> 47#include <linux/in6.h> 48#include <linux/completion.h> 49#include <linux/seq_file.h> 50#include <linux/dnotify.h> 51#include <linux/crc32.h> 52#include <linux/firmware.h> 53#include <asm/checksum.h> 54 55#if defined(CONFIG_PROC_FS) 56#include <linux/proc_fs.h> 57#endif 58#ifdef CONFIG_KMOD 59#include <linux/kmod.h> 60#endif 61 62extern void set_device_ro(kdev_t dev,int flag); 63 64extern void *sys_call_table; 65 66extern struct timezone sys_tz; 67extern int request_dma(unsigned int dmanr, char * deviceID); 68extern void free_dma(unsigned int dmanr); 69extern spinlock_t dma_spin_lock; 70extern int panic_timeout; 71 72#ifdef CONFIG_MODVERSIONS 73const struct module_symbol __export_Using_Versions 74__attribute__((section("__ksymtab"))) = { 75 1 /* Version version */, "Using_Versions" 76}; 77#endif 78 79 80EXPORT_SYMBOL(inter_module_register); 81EXPORT_SYMBOL(inter_module_unregister); 82EXPORT_SYMBOL(inter_module_get); 83EXPORT_SYMBOL(inter_module_get_request); 84EXPORT_SYMBOL(inter_module_put); 85EXPORT_SYMBOL(try_inc_mod_count); 86 87/* process memory management */ 88EXPORT_SYMBOL(do_mmap_pgoff); 89EXPORT_SYMBOL(do_munmap); 90EXPORT_SYMBOL(do_brk); 91EXPORT_SYMBOL(exit_mm); 92EXPORT_SYMBOL(exit_files); 93EXPORT_SYMBOL(exit_fs); 94EXPORT_SYMBOL(exit_sighand); 95 96/* internal kernel memory management */ 97EXPORT_SYMBOL(_alloc_pages); 98EXPORT_SYMBOL(__alloc_pages); 99EXPORT_SYMBOL(alloc_pages_node); 100EXPORT_SYMBOL(__get_free_pages); 101EXPORT_SYMBOL(get_zeroed_page); 102EXPORT_SYMBOL(__free_pages); 103EXPORT_SYMBOL(free_pages); 104EXPORT_SYMBOL(num_physpages); 105EXPORT_SYMBOL(kmem_find_general_cachep); 106EXPORT_SYMBOL(kmem_cache_create); 107EXPORT_SYMBOL(kmem_cache_destroy); 108EXPORT_SYMBOL(kmem_cache_shrink); 109EXPORT_SYMBOL(kmem_cache_alloc); 110EXPORT_SYMBOL(kmem_cache_free); 111EXPORT_SYMBOL(kmem_cache_size); 112EXPORT_SYMBOL(kmalloc); 113EXPORT_SYMBOL(kfree); 114EXPORT_SYMBOL(vfree); 115EXPORT_SYMBOL(__vmalloc); 116EXPORT_SYMBOL(vmap); 117EXPORT_SYMBOL(vmalloc_to_page); 118EXPORT_SYMBOL(mem_map); 119EXPORT_SYMBOL(remap_page_range); 120EXPORT_SYMBOL(max_mapnr); 121EXPORT_SYMBOL(high_memory); 122EXPORT_SYMBOL(vmtruncate); 123EXPORT_SYMBOL(find_vma); 124EXPORT_SYMBOL(get_unmapped_area); 125EXPORT_SYMBOL(init_mm); 126#ifdef CONFIG_HIGHMEM 127EXPORT_SYMBOL(kmap_high); 128EXPORT_SYMBOL(kunmap_high); 129EXPORT_SYMBOL(highmem_start_page); 130EXPORT_SYMBOL(create_bounce); 131EXPORT_SYMBOL(kmap_prot); 132EXPORT_SYMBOL(kmap_pte); 133#endif 134 135/* filesystem internal functions */ 136EXPORT_SYMBOL(def_blk_fops); 137EXPORT_SYMBOL(update_atime); 138EXPORT_SYMBOL(get_fs_type); 139EXPORT_SYMBOL(get_super); 140EXPORT_SYMBOL(drop_super); 141EXPORT_SYMBOL(getname); 142EXPORT_SYMBOL(names_cachep); 143EXPORT_SYMBOL(fput); 144EXPORT_SYMBOL(fget); 145EXPORT_SYMBOL(igrab); 146EXPORT_SYMBOL(iunique); 147EXPORT_SYMBOL(ilookup); 148EXPORT_SYMBOL(iget4_locked); 149EXPORT_SYMBOL(unlock_new_inode); 150EXPORT_SYMBOL(iput); 151EXPORT_SYMBOL(inode_init_once); 152EXPORT_SYMBOL(__inode_init_once); 153EXPORT_SYMBOL(force_delete); 154EXPORT_SYMBOL(follow_up); 155EXPORT_SYMBOL(follow_down); 156EXPORT_SYMBOL(lookup_mnt); 157EXPORT_SYMBOL(path_init); 158EXPORT_SYMBOL(path_walk); 159EXPORT_SYMBOL(path_lookup); 160EXPORT_SYMBOL(path_release); 161EXPORT_SYMBOL(__user_walk); 162EXPORT_SYMBOL(lookup_one_len); 163EXPORT_SYMBOL(lookup_hash); 164EXPORT_SYMBOL(sys_close); 165EXPORT_SYMBOL(dcache_lock); 166EXPORT_SYMBOL(d_alloc_root); 167EXPORT_SYMBOL(d_delete); 168EXPORT_SYMBOL(dget_locked); 169EXPORT_SYMBOL(d_validate); 170EXPORT_SYMBOL(d_rehash); 171EXPORT_SYMBOL(d_invalidate); /* May be it will be better in dcache.h? */ 172EXPORT_SYMBOL(d_move); 173EXPORT_SYMBOL(d_instantiate); 174EXPORT_SYMBOL(d_alloc); 175EXPORT_SYMBOL(d_lookup); 176EXPORT_SYMBOL(__d_path); 177EXPORT_SYMBOL(mark_buffer_dirty); 178EXPORT_SYMBOL(set_buffer_async_io); /* for reiserfs_writepage */ 179EXPORT_SYMBOL(end_buffer_io_async); 180EXPORT_SYMBOL(__mark_buffer_dirty); 181EXPORT_SYMBOL(__mark_inode_dirty); 182EXPORT_SYMBOL(fd_install); 183EXPORT_SYMBOL(get_empty_filp); 184EXPORT_SYMBOL(init_private_file); 185EXPORT_SYMBOL(filp_open); 186EXPORT_SYMBOL(filp_close); 187EXPORT_SYMBOL(put_filp); 188EXPORT_SYMBOL(files_lock); 189EXPORT_SYMBOL(check_disk_change); 190EXPORT_SYMBOL(__invalidate_buffers); 191EXPORT_SYMBOL(invalidate_bdev); 192EXPORT_SYMBOL(invalidate_inodes); 193EXPORT_SYMBOL(invalidate_device); 194EXPORT_SYMBOL(invalidate_inode_pages); 195EXPORT_SYMBOL(truncate_inode_pages); 196EXPORT_SYMBOL(fsync_dev); 197EXPORT_SYMBOL(fsync_no_super); 198EXPORT_SYMBOL(permission); 199EXPORT_SYMBOL(vfs_permission); 200EXPORT_SYMBOL(inode_setattr); 201EXPORT_SYMBOL(inode_change_ok); 202EXPORT_SYMBOL(write_inode_now); 203EXPORT_SYMBOL(notify_change); 204EXPORT_SYMBOL(set_blocksize); 205EXPORT_SYMBOL(sb_set_blocksize); 206EXPORT_SYMBOL(sb_min_blocksize); 207EXPORT_SYMBOL(getblk); 208EXPORT_SYMBOL(cdget); 209EXPORT_SYMBOL(cdput); 210EXPORT_SYMBOL(bdget); 211EXPORT_SYMBOL(bdput); 212EXPORT_SYMBOL(bread); 213EXPORT_SYMBOL(__brelse); 214EXPORT_SYMBOL(__bforget); 215EXPORT_SYMBOL(ll_rw_block); 216EXPORT_SYMBOL(submit_bh); 217EXPORT_SYMBOL(unlock_buffer); 218EXPORT_SYMBOL(__wait_on_buffer); 219EXPORT_SYMBOL(___wait_on_page); 220EXPORT_SYMBOL(generic_direct_IO); 221EXPORT_SYMBOL(discard_bh_page); 222EXPORT_SYMBOL(block_write_full_page); 223EXPORT_SYMBOL(block_read_full_page); 224EXPORT_SYMBOL(block_prepare_write); 225EXPORT_SYMBOL(block_sync_page); 226EXPORT_SYMBOL(generic_cont_expand); 227EXPORT_SYMBOL(cont_prepare_write); 228EXPORT_SYMBOL(generic_commit_write); 229EXPORT_SYMBOL(block_truncate_page); 230EXPORT_SYMBOL(generic_block_bmap); 231EXPORT_SYMBOL(generic_file_read); 232EXPORT_SYMBOL(do_generic_file_read); 233EXPORT_SYMBOL(do_generic_file_write); 234EXPORT_SYMBOL(do_generic_direct_read); 235EXPORT_SYMBOL(do_generic_direct_write); 236EXPORT_SYMBOL(generic_file_write); 237EXPORT_SYMBOL(generic_file_mmap); 238EXPORT_SYMBOL(generic_ro_fops); 239EXPORT_SYMBOL(generic_buffer_fdatasync); 240EXPORT_SYMBOL(page_hash_bits); 241EXPORT_SYMBOL(page_hash_table); 242EXPORT_SYMBOL(file_lock_list); 243EXPORT_SYMBOL(locks_init_lock); 244EXPORT_SYMBOL(locks_copy_lock); 245EXPORT_SYMBOL(posix_lock_file); 246EXPORT_SYMBOL(posix_test_lock); 247EXPORT_SYMBOL(posix_block_lock); 248EXPORT_SYMBOL(posix_unblock_lock); 249EXPORT_SYMBOL(posix_locks_deadlock); 250EXPORT_SYMBOL(locks_mandatory_area); 251EXPORT_SYMBOL(dput); 252EXPORT_SYMBOL(have_submounts); 253EXPORT_SYMBOL(d_find_alias); 254EXPORT_SYMBOL(d_prune_aliases); 255EXPORT_SYMBOL(prune_dcache); 256EXPORT_SYMBOL(shrink_dcache_sb); 257EXPORT_SYMBOL(shrink_dcache_parent); 258EXPORT_SYMBOL(find_inode_number); 259EXPORT_SYMBOL(is_subdir); 260EXPORT_SYMBOL(get_unused_fd); 261EXPORT_SYMBOL(put_unused_fd); 262EXPORT_SYMBOL(vfs_create); 263EXPORT_SYMBOL(vfs_mkdir); 264EXPORT_SYMBOL(vfs_mknod); 265EXPORT_SYMBOL(vfs_symlink); 266EXPORT_SYMBOL(vfs_link); 267EXPORT_SYMBOL(vfs_rmdir); 268EXPORT_SYMBOL(vfs_unlink); 269EXPORT_SYMBOL(vfs_rename); 270EXPORT_SYMBOL(vfs_statfs); 271EXPORT_SYMBOL(generic_read_dir); 272EXPORT_SYMBOL(generic_file_llseek); 273EXPORT_SYMBOL(no_llseek); 274EXPORT_SYMBOL(__pollwait); 275EXPORT_SYMBOL(poll_freewait); 276EXPORT_SYMBOL(ROOT_DEV); 277EXPORT_SYMBOL(__find_get_page); 278EXPORT_SYMBOL(__find_lock_page); 279EXPORT_SYMBOL(find_trylock_page); 280EXPORT_SYMBOL(find_or_create_page); 281EXPORT_SYMBOL(grab_cache_page_nowait); 282EXPORT_SYMBOL(read_cache_page); 283EXPORT_SYMBOL(set_page_dirty); 284EXPORT_SYMBOL(mark_page_accessed); 285EXPORT_SYMBOL(vfs_readlink); 286EXPORT_SYMBOL(vfs_follow_link); 287EXPORT_SYMBOL(page_readlink); 288EXPORT_SYMBOL(page_follow_link); 289EXPORT_SYMBOL(page_symlink_inode_operations); 290EXPORT_SYMBOL(block_symlink); 291EXPORT_SYMBOL(vfs_readdir); 292EXPORT_SYMBOL(__get_lease); 293EXPORT_SYMBOL(lease_get_mtime); 294EXPORT_SYMBOL(lock_may_read); 295EXPORT_SYMBOL(lock_may_write); 296EXPORT_SYMBOL(dcache_dir_open); 297EXPORT_SYMBOL(dcache_dir_close); 298EXPORT_SYMBOL(dcache_dir_lseek); 299EXPORT_SYMBOL(dcache_dir_fsync); 300EXPORT_SYMBOL(dcache_readdir); 301EXPORT_SYMBOL(dcache_dir_ops); 302 303/* for stackable file systems (lofs, wrapfs, cryptfs, etc.) */ 304EXPORT_SYMBOL(default_llseek); 305EXPORT_SYMBOL(dentry_open); 306EXPORT_SYMBOL(filemap_nopage); 307EXPORT_SYMBOL(filemap_sync); 308EXPORT_SYMBOL(filemap_fdatawrite); 309EXPORT_SYMBOL(filemap_fdatasync); 310EXPORT_SYMBOL(filemap_fdatawait); 311EXPORT_SYMBOL(lock_page); 312EXPORT_SYMBOL(unlock_page); 313EXPORT_SYMBOL(wakeup_page_waiters); 314 315/* device registration */ 316EXPORT_SYMBOL(register_chrdev); 317EXPORT_SYMBOL(unregister_chrdev); 318EXPORT_SYMBOL(register_blkdev); 319EXPORT_SYMBOL(unregister_blkdev); 320EXPORT_SYMBOL(tty_register_driver); 321EXPORT_SYMBOL(tty_unregister_driver); 322EXPORT_SYMBOL(tty_std_termios); 323 324/* block device driver support */ 325EXPORT_SYMBOL(blksize_size); 326EXPORT_SYMBOL(hardsect_size); 327EXPORT_SYMBOL(blk_size); 328EXPORT_SYMBOL(blk_dev); 329EXPORT_SYMBOL(is_read_only); 330EXPORT_SYMBOL(set_device_ro); 331EXPORT_SYMBOL(bmap); 332EXPORT_SYMBOL(sync_dev); 333EXPORT_SYMBOL(devfs_register_partitions); 334EXPORT_SYMBOL(blkdev_open); 335EXPORT_SYMBOL(blkdev_get); 336EXPORT_SYMBOL(blkdev_put); 337EXPORT_SYMBOL(ioctl_by_bdev); 338EXPORT_SYMBOL(grok_partitions); 339EXPORT_SYMBOL(register_disk); 340EXPORT_SYMBOL(tq_disk); 341EXPORT_SYMBOL(init_buffer); 342EXPORT_SYMBOL(refile_buffer); 343EXPORT_SYMBOL(max_sectors); 344EXPORT_SYMBOL(max_readahead); 345 346/* tty routines */ 347EXPORT_SYMBOL(tty_hangup); 348EXPORT_SYMBOL(tty_wait_until_sent); 349EXPORT_SYMBOL(tty_check_change); 350EXPORT_SYMBOL(tty_hung_up_p); 351EXPORT_SYMBOL(tty_flip_buffer_push); 352EXPORT_SYMBOL(tty_get_baud_rate); 353EXPORT_SYMBOL(do_SAK); 354 355/* filesystem registration */ 356EXPORT_SYMBOL(register_filesystem); 357EXPORT_SYMBOL(unregister_filesystem); 358EXPORT_SYMBOL(kern_mount); 359EXPORT_SYMBOL(__mntput); 360EXPORT_SYMBOL(may_umount); 361 362/* executable format registration */ 363EXPORT_SYMBOL(register_binfmt); 364EXPORT_SYMBOL(unregister_binfmt); 365EXPORT_SYMBOL(search_binary_handler); 366EXPORT_SYMBOL(prepare_binprm); 367EXPORT_SYMBOL(compute_creds); 368EXPORT_SYMBOL(remove_arg_zero); 369EXPORT_SYMBOL(set_binfmt); 370 371/* sysctl table registration */ 372EXPORT_SYMBOL(register_sysctl_table); 373EXPORT_SYMBOL(unregister_sysctl_table); 374EXPORT_SYMBOL(sysctl_string); 375EXPORT_SYMBOL(sysctl_intvec); 376EXPORT_SYMBOL(sysctl_jiffies); 377EXPORT_SYMBOL(proc_dostring); 378EXPORT_SYMBOL(proc_dointvec); 379EXPORT_SYMBOL(proc_dointvec_jiffies); 380EXPORT_SYMBOL(proc_dointvec_minmax); 381EXPORT_SYMBOL(proc_doulongvec_ms_jiffies_minmax); 382EXPORT_SYMBOL(proc_doulongvec_minmax); 383 384/* interrupt handling */ 385EXPORT_SYMBOL(add_timer); 386EXPORT_SYMBOL(del_timer); 387EXPORT_SYMBOL(request_irq); 388EXPORT_SYMBOL(free_irq); 389#if !defined(CONFIG_IA64) /* irq_stat is part of struct cpuinfo_ia64 */ 390EXPORT_SYMBOL(irq_stat); 391#endif 392 393/* waitqueue handling */ 394EXPORT_SYMBOL(add_wait_queue); 395EXPORT_SYMBOL(add_wait_queue_exclusive); 396EXPORT_SYMBOL(remove_wait_queue); 397 398/* completion handling */ 399EXPORT_SYMBOL(wait_for_completion); 400EXPORT_SYMBOL(complete); 401 402/* The notion of irq probe/assignment is foreign to S/390 */ 403 404#if !defined(CONFIG_ARCH_S390) 405EXPORT_SYMBOL(probe_irq_on); 406EXPORT_SYMBOL(probe_irq_off); 407#endif 408 409#ifdef CONFIG_SMP 410EXPORT_SYMBOL(del_timer_sync); 411#endif 412EXPORT_SYMBOL(mod_timer); 413EXPORT_SYMBOL(tq_timer); 414EXPORT_SYMBOL(tq_immediate); 415 416#ifdef CONFIG_SMP 417/* Various random spinlocks we want to export */ 418EXPORT_SYMBOL(tqueue_lock); 419 420/* Big-Reader lock implementation */ 421EXPORT_SYMBOL(__brlock_array); 422#ifndef __BRLOCK_USE_ATOMICS 423EXPORT_SYMBOL(__br_write_locks); 424#endif 425EXPORT_SYMBOL(__br_write_lock); 426EXPORT_SYMBOL(__br_write_unlock); 427#endif 428 429/* Kiobufs */ 430EXPORT_SYMBOL(alloc_kiovec); 431EXPORT_SYMBOL(free_kiovec); 432EXPORT_SYMBOL(expand_kiobuf); 433 434EXPORT_SYMBOL(map_user_kiobuf); 435EXPORT_SYMBOL(unmap_kiobuf); 436EXPORT_SYMBOL(lock_kiovec); 437EXPORT_SYMBOL(unlock_kiovec); 438EXPORT_SYMBOL(brw_kiovec); 439EXPORT_SYMBOL(kiobuf_wait_for_io); 440 441/* dma handling */ 442EXPORT_SYMBOL(request_dma); 443EXPORT_SYMBOL(free_dma); 444EXPORT_SYMBOL(dma_spin_lock); 445#ifdef HAVE_DISABLE_HLT 446EXPORT_SYMBOL(disable_hlt); 447EXPORT_SYMBOL(enable_hlt); 448#endif 449 450/* resource handling */ 451EXPORT_SYMBOL(request_resource); 452EXPORT_SYMBOL(release_resource); 453EXPORT_SYMBOL(allocate_resource); 454EXPORT_SYMBOL(check_resource); 455EXPORT_SYMBOL(__request_region); 456EXPORT_SYMBOL(__check_region); 457EXPORT_SYMBOL(__release_region); 458EXPORT_SYMBOL(ioport_resource); 459EXPORT_SYMBOL(iomem_resource); 460 461/* process management */ 462EXPORT_SYMBOL(complete_and_exit); 463EXPORT_SYMBOL(__wake_up); 464EXPORT_SYMBOL(__wake_up_sync); 465EXPORT_SYMBOL(wake_up_process); 466EXPORT_SYMBOL(sleep_on); 467EXPORT_SYMBOL(sleep_on_timeout); 468EXPORT_SYMBOL(interruptible_sleep_on); 469EXPORT_SYMBOL(interruptible_sleep_on_timeout); 470EXPORT_SYMBOL(schedule); 471EXPORT_SYMBOL(schedule_timeout); 472#if CONFIG_SMP 473EXPORT_SYMBOL(set_cpus_allowed); 474#endif 475EXPORT_SYMBOL(yield); 476EXPORT_SYMBOL(__cond_resched); 477EXPORT_SYMBOL(jiffies); 478EXPORT_SYMBOL(xtime); 479EXPORT_SYMBOL(do_gettimeofday); 480EXPORT_SYMBOL(do_settimeofday); 481 482#if !defined(__ia64__) 483EXPORT_SYMBOL(loops_per_jiffy); 484#endif 485 486EXPORT_SYMBOL(kstat); 487EXPORT_SYMBOL(nr_running); 488 489/* misc */ 490EXPORT_SYMBOL(panic); 491EXPORT_SYMBOL(panic_notifier_list); 492EXPORT_SYMBOL(panic_timeout); 493EXPORT_SYMBOL(__out_of_line_bug); 494EXPORT_SYMBOL(sprintf); 495EXPORT_SYMBOL(snprintf); 496EXPORT_SYMBOL(sscanf); 497EXPORT_SYMBOL(vsprintf); 498EXPORT_SYMBOL(vsnprintf); 499EXPORT_SYMBOL(vsscanf); 500EXPORT_SYMBOL(kdevname); 501EXPORT_SYMBOL(bdevname); 502EXPORT_SYMBOL(cdevname); 503EXPORT_SYMBOL(simple_strtol); 504EXPORT_SYMBOL(simple_strtoul); 505EXPORT_SYMBOL(simple_strtoull); 506EXPORT_SYMBOL(system_utsname); /* UTS data */ 507EXPORT_SYMBOL(uts_sem); /* UTS semaphore */ 508#ifndef __mips__ 509EXPORT_SYMBOL(sys_call_table); 510#endif 511EXPORT_SYMBOL(machine_restart); 512EXPORT_SYMBOL(machine_halt); 513EXPORT_SYMBOL(machine_power_off); 514EXPORT_SYMBOL(_ctype); 515EXPORT_SYMBOL(secure_tcp_sequence_number); 516EXPORT_SYMBOL(get_random_bytes); 517EXPORT_SYMBOL(securebits); 518EXPORT_SYMBOL(cap_bset); 519EXPORT_SYMBOL(reparent_to_init); 520EXPORT_SYMBOL(daemonize); 521EXPORT_SYMBOL(csum_partial); /* for networking and md */ 522EXPORT_SYMBOL(seq_escape); 523EXPORT_SYMBOL(seq_printf); 524EXPORT_SYMBOL(seq_open); 525EXPORT_SYMBOL(seq_release); 526EXPORT_SYMBOL(seq_read); 527EXPORT_SYMBOL(seq_lseek); 528EXPORT_SYMBOL(single_open); 529EXPORT_SYMBOL(single_release); 530EXPORT_SYMBOL(seq_release_private); 531 532/* Program loader interfaces */ 533EXPORT_SYMBOL(setup_arg_pages); 534EXPORT_SYMBOL(copy_strings_kernel); 535EXPORT_SYMBOL(do_execve); 536EXPORT_SYMBOL(flush_old_exec); 537EXPORT_SYMBOL(kernel_read); 538EXPORT_SYMBOL(open_exec); 539 540/* Miscellaneous access points */ 541EXPORT_SYMBOL(si_meminfo); 542 543/* Added to make file system as module */ 544EXPORT_SYMBOL(sys_tz); 545EXPORT_SYMBOL(file_fsync); 546EXPORT_SYMBOL(fsync_buffers_list); 547EXPORT_SYMBOL(clear_inode); 548EXPORT_SYMBOL(___strtok); 549EXPORT_SYMBOL(init_special_inode); 550EXPORT_SYMBOL(read_ahead); 551EXPORT_SYMBOL(get_hash_table); 552EXPORT_SYMBOL(new_inode); 553EXPORT_SYMBOL(insert_inode_hash); 554EXPORT_SYMBOL(remove_inode_hash); 555EXPORT_SYMBOL(buffer_insert_list); 556EXPORT_SYMBOL(make_bad_inode); 557EXPORT_SYMBOL(is_bad_inode); 558EXPORT_SYMBOL(event); 559EXPORT_SYMBOL(brw_page); 560EXPORT_SYMBOL(__inode_dir_notify); 561 562#ifdef CONFIG_UID16 563EXPORT_SYMBOL(overflowuid); 564EXPORT_SYMBOL(overflowgid); 565#endif 566EXPORT_SYMBOL(fs_overflowuid); 567EXPORT_SYMBOL(fs_overflowgid); 568 569/* all busmice */ 570EXPORT_SYMBOL(fasync_helper); 571EXPORT_SYMBOL(kill_fasync); 572 573EXPORT_SYMBOL(disk_name); /* for md.c */ 574 575/* binfmt_aout */ 576EXPORT_SYMBOL(get_write_access); 577 578/* library functions */ 579EXPORT_SYMBOL(strnicmp); 580EXPORT_SYMBOL(strspn); 581EXPORT_SYMBOL(strsep); 582 583#ifdef CONFIG_CRC32 584EXPORT_SYMBOL(crc32_le); 585EXPORT_SYMBOL(crc32_be); 586EXPORT_SYMBOL(bitreverse); 587#endif 588 589#ifdef CONFIG_FW_LOADER 590EXPORT_SYMBOL(release_firmware); 591EXPORT_SYMBOL(request_firmware); 592EXPORT_SYMBOL(request_firmware_nowait); 593EXPORT_SYMBOL(register_firmware); 594#endif 595 596/* software interrupts */ 597EXPORT_SYMBOL(tasklet_hi_vec); 598EXPORT_SYMBOL(tasklet_vec); 599EXPORT_SYMBOL(bh_task_vec); 600EXPORT_SYMBOL(init_bh); 601EXPORT_SYMBOL(remove_bh); 602EXPORT_SYMBOL(tasklet_init); 603EXPORT_SYMBOL(tasklet_kill); 604EXPORT_SYMBOL(__run_task_queue); 605EXPORT_SYMBOL(do_softirq); 606EXPORT_SYMBOL(raise_softirq); 607EXPORT_SYMBOL(cpu_raise_softirq); 608EXPORT_SYMBOL(__tasklet_schedule); 609EXPORT_SYMBOL(__tasklet_hi_schedule); 610 611/* init task, for moving kthread roots - ought to export a function ?? */ 612 613EXPORT_SYMBOL(init_task_union); 614 615EXPORT_SYMBOL(tasklist_lock); 616EXPORT_SYMBOL(pidhash); 617EXPORT_SYMBOL(unshare_files); 618 619/* debug */ 620EXPORT_SYMBOL(dump_stack); 621 622/* To match ksyms with System.map */ 623extern const char _end[]; 624EXPORT_SYMBOL(_end); 625

