📄 a.i
字号:
extern void init_rwsem(struct rw_semaphore *sem) ;extern void __down_read(struct rw_semaphore *sem) ;extern void __down_write(struct rw_semaphore *sem) ;extern void __up_read(struct rw_semaphore *sem) ;extern void __up_write(struct rw_semaphore *sem) ;# 25 "/home/llhg/linux-2.4/linux/include/linux/rwsem.h" 2 static inline void down_read(struct rw_semaphore *sem){ ; __down_read(sem); ;} static inline void down_write(struct rw_semaphore *sem){ ; __down_write(sem); ;} static inline void up_read(struct rw_semaphore *sem){ ; __up_read(sem); ;} static inline void up_write(struct rw_semaphore *sem){ ; __up_write(sem); ;}# 10 "/home/llhg/linux-2.4/linux/include/asm/semaphore.h" 2# 1 "/home/llhg/linux-2.4/linux/include/asm/proc/locks.h" 1 # 32 "/home/llhg/linux-2.4/linux/include/asm/proc/locks.h"# 54 "/home/llhg/linux-2.4/linux/include/asm/proc/locks.h"# 72 "/home/llhg/linux-2.4/linux/include/asm/proc/locks.h" # 99 "/home/llhg/linux-2.4/linux/include/asm/proc/locks.h"# 117 "/home/llhg/linux-2.4/linux/include/asm/proc/locks.h"# 138 "/home/llhg/linux-2.4/linux/include/asm/proc/locks.h"# 13 "/home/llhg/linux-2.4/linux/include/asm/semaphore.h" 2struct semaphore { atomic_t count; int sleepers; wait_queue_head_t wait;};static inline void sema_init(struct semaphore *sem, int val){ ((( &sem->count )->counter) = ( val )) ; sem->sleepers = 0; init_waitqueue_head(&sem->wait);}static inline void init_MUTEX(struct semaphore *sem){ sema_init(sem, 1);}static inline void init_MUTEX_LOCKED(struct semaphore *sem){ sema_init(sem, 0);} void __down_failed(void); int __down_interruptible_failed(void); int __down_trylock_failed(void); void __up_wakeup(void);extern void __down(struct semaphore * sem);extern int __down_interruptible(struct semaphore * sem);extern int __down_trylock(struct semaphore * sem);extern void __up(struct semaphore * sem); static inline void down(struct semaphore * sem){ ({ __asm__ __volatile__( "@ down_op\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " subs lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movmi ip, %0\n" " blmi " "__down_failed" : : "r" ( sem ), "I" (1) : "ip", "lr", "cc"); }) ;} static inline int down_interruptible (struct semaphore * sem){ return ({ unsigned int ret; __asm__ __volatile__( "@ down_op_ret\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%1]\n" " subs lr, lr, %2\n" " str lr, [%1]\n" " msr cpsr_c, ip\n" " movmi ip, %1\n" " movpl ip, #0\n" " blmi " "__down_interruptible_failed" "\n" " mov %0, ip" : "=&r" (ret) : "r" ( sem ), "I" (1) : "ip", "lr", "cc"); ret; }) ;}static inline int down_trylock(struct semaphore *sem){ return ({ unsigned int ret; __asm__ __volatile__( "@ down_op_ret\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%1]\n" " subs lr, lr, %2\n" " str lr, [%1]\n" " msr cpsr_c, ip\n" " movmi ip, %1\n" " movpl ip, #0\n" " blmi " "__down_trylock_failed" "\n" " mov %0, ip" : "=&r" (ret) : "r" ( sem ), "I" (1) : "ip", "lr", "cc"); ret; }) ;} static inline void up(struct semaphore * sem){ ({ __asm__ __volatile__( "@ up_op\n" " mrs ip, cpsr\n" " orr lr, ip, #128\n" " msr cpsr_c, lr\n" " ldr lr, [%0]\n" " adds lr, lr, %1\n" " str lr, [%0]\n" " msr cpsr_c, ip\n" " movle ip, %0\n" " blle " "__up_wakeup" : : "r" ( sem ), "I" (1) : "ip", "lr", "cc"); }) ;}# 200 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/asm/byteorder.h" 1 # 1 "/home/llhg/linux-2.4/linux/include/linux/byteorder/little_endian.h" 1# 1 "/home/llhg/linux-2.4/linux/include/linux/byteorder/swab.h" 1 # 38 "/home/llhg/linux-2.4/linux/include/linux/byteorder/swab.h"# 52 "/home/llhg/linux-2.4/linux/include/linux/byteorder/swab.h"# 73 "/home/llhg/linux-2.4/linux/include/linux/byteorder/swab.h" # 124 "/home/llhg/linux-2.4/linux/include/linux/byteorder/swab.h"static __inline__ __const__ __u16 __fswab16(__u16 x){ return ({ __u16 __tmp = ( x ) ; ({ __u16 __x = ( __tmp ); ((__u16)( (((__u16)(__x) & (__u16)0x00ffU) << 8) | (((__u16)(__x) & (__u16)0xff00U) >> 8) )); }) ; }) ;}static __inline__ __u16 __swab16p(__u16 *x){ return ({ __u16 __tmp = ( *( x ) ) ; ({ __u16 __x = ( __tmp ); ((__u16)( (((__u16)(__x) & (__u16)0x00ffU) << 8) | (((__u16)(__x) & (__u16)0xff00U) >> 8) )); }) ; }) ;}static __inline__ void __swab16s(__u16 *addr){ do { *( addr ) = ({ __u16 __tmp = ( *( ( addr ) ) ) ; ({ __u16 __x = ( __tmp ); ((__u16)( (((__u16)(__x) & (__u16)0x00ffU) << 8) | (((__u16)(__x) & (__u16)0xff00U) >> 8) )); }) ; }) ; } while (0) ;}static __inline__ __const__ __u32 __fswab32(__u32 x){ return ({ __u32 __tmp = ( x ) ; ({ __u32 __x = ( __tmp ); ((__u32)( (((__u32)(__x) & (__u32)0x000000ffUL) << 24) | (((__u32)(__x) & (__u32)0x0000ff00UL) << 8) | (((__u32)(__x) & (__u32)0x00ff0000UL) >> 8) | (((__u32)(__x) & (__u32)0xff000000UL) >> 24) )); }) ; }) ;}static __inline__ __u32 __swab32p(__u32 *x){ return ({ __u32 __tmp = ( *( x ) ) ; ({ __u32 __x = ( __tmp ); ((__u32)( (((__u32)(__x) & (__u32)0x000000ffUL) << 24) | (((__u32)(__x) & (__u32)0x0000ff00UL) << 8) | (((__u32)(__x) & (__u32)0x00ff0000UL) >> 8) | (((__u32)(__x) & (__u32)0xff000000UL) >> 24) )); }) ; }) ;}static __inline__ void __swab32s(__u32 *addr){ do { *( addr ) = ({ __u32 __tmp = ( *( ( addr ) ) ) ; ({ __u32 __x = ( __tmp ); ((__u32)( (((__u32)(__x) & (__u32)0x000000ffUL) << 24) | (((__u32)(__x) & (__u32)0x0000ff00UL) << 8) | (((__u32)(__x) & (__u32)0x00ff0000UL) >> 8) | (((__u32)(__x) & (__u32)0xff000000UL) >> 24) )); }) ; }) ; } while (0) ;}static __inline__ __const__ __u64 __fswab64(__u64 x){ __u32 h = x >> 32; __u32 l = x & ((1ULL<<32)-1); return (((__u64)__fswab32( l ) ) << 32) | ((__u64)(__fswab32( h ) ));}static __inline__ __u64 __swab64p(__u64 *x){ return ({ __u64 __tmp = ( *( x ) ) ; ({ __u64 __x = ( __tmp ); ((__u64)( (__u64)(((__u64)(__x) & (__u64)0x00000000000000ffULL) << 56) | (__u64)(((__u64)(__x) & (__u64)0x000000000000ff00ULL) << 40) | (__u64)(((__u64)(__x) & (__u64)0x0000000000ff0000ULL) << 24) | (__u64)(((__u64)(__x) & (__u64)0x00000000ff000000ULL) << 8) | (__u64)(((__u64)(__x) & (__u64)0x000000ff00000000ULL) >> 8) | (__u64)(((__u64)(__x) & (__u64)0x0000ff0000000000ULL) >> 24) | (__u64)(((__u64)(__x) & (__u64)0x00ff000000000000ULL) >> 40) | (__u64)(((__u64)(__x) & (__u64)0xff00000000000000ULL) >> 56) )); }) ; }) ;}static __inline__ void __swab64s(__u64 *addr){ do { *( addr ) = ({ __u64 __tmp = ( *( ( addr ) ) ) ; ({ __u64 __x = ( __tmp ); ((__u64)( (__u64)(((__u64)(__x) & (__u64)0x00000000000000ffULL) << 56) | (__u64)(((__u64)(__x) & (__u64)0x000000000000ff00ULL) << 40) | (__u64)(((__u64)(__x) & (__u64)0x0000000000ff0000ULL) << 24) | (__u64)(((__u64)(__x) & (__u64)0x00000000ff000000ULL) << 8) | (__u64)(((__u64)(__x) & (__u64)0x000000ff00000000ULL) >> 8) | (__u64)(((__u64)(__x) & (__u64)0x0000ff0000000000ULL) >> 24) | (__u64)(((__u64)(__x) & (__u64)0x00ff000000000000ULL) >> 40) | (__u64)(((__u64)(__x) & (__u64)0xff00000000000000ULL) >> 56) )); }) ; }) ; } while (0) ;}# 11 "/home/llhg/linux-2.4/linux/include/linux/byteorder/little_endian.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/byteorder/generic.h" 1 extern __u32 ntohl(__u32);extern __u32 htonl(__u32);extern unsigned short int ntohs(unsigned short int);extern unsigned short int htons(unsigned short int);# 177 "/home/llhg/linux-2.4/linux/include/linux/byteorder/generic.h"# 66 "/home/llhg/linux-2.4/linux/include/linux/byteorder/little_endian.h" 2# 29 "/home/llhg/linux-2.4/linux/include/asm/byteorder.h" 2# 201 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2extern void update_atime (struct inode *);extern void buffer_init(unsigned long);extern void inode_init(unsigned long);extern void mnt_init(unsigned long); enum bh_state_bits { BH_Uptodate, BH_Dirty, BH_Lock, BH_Req, BH_Mapped, BH_New, BH_Async, BH_Wait_IO, BH_launder, BH_JBD, BH_PrivateStart, }; struct buffer_head { struct buffer_head *b_next; unsigned long b_blocknr; unsigned short b_size; unsigned short b_list; kdev_t b_dev; atomic_t b_count; kdev_t b_rdev; unsigned long b_state; unsigned long b_flushtime; struct buffer_head *b_next_free; struct buffer_head *b_prev_free; struct buffer_head *b_this_page; struct buffer_head *b_reqnext; struct buffer_head **b_pprev; char * b_data; struct page *b_page; void (*b_end_io)(struct buffer_head *bh, int uptodate); void *b_private; unsigned long b_rsector; wait_queue_head_t b_wait; struct inode * b_inode; struct list_head b_inode_buffers; };typedef void (bh_end_io_t)(struct buffer_head *bh, int uptodate);void init_buffer(struct buffer_head *, bh_end_io_t *, void *);extern void set_bh_page(struct buffer_head *bh, struct page *page, unsigned long offset);# 1 "/home/llhg/linux-2.4/linux/include/linux/pipe_fs_i.h" 1struct pipe_inode_info { wait_queue_head_t wait; char *base; unsigned int len; unsigned int start; unsigned int readers; unsigned int writers; unsigned int waiting_readers; unsigned int waiting_writers; unsigned int r_counter; unsigned int w_counter;}; void pipe_wait(struct inode * inode);struct inode* pipe_new(struct inode* inode);# 290 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/minix_fs_i.h" 1 struct minix_inode_info { union { __u16 i1_data[16]; __u32 i2_data[16]; } u;};# 291 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/ext2_fs_i.h" 1 struct ext2_inode_info { __u32 i_data[15]; __u32 i_flags; __u32 i_faddr; __u8 i_frag_no; __u8 i_frag_size; __u16 i_osync; __u32 i_file_acl; __u32 i_dir_acl; __u32 i_dtime; __u32 i_block_group; __u32 i_next_alloc_block; __u32 i_next_alloc_goal; __u32 i_prealloc_block; __u32 i_prealloc_count; __u32 i_dir_start_lookup; int i_new_inode:1; };# 292 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/ext3_fs_i.h" 1 struct ext3_inode_info { __u32 i_data[15]; __u32 i_flags; __u32 i_file_acl; __u32 i_dir_acl; __u32 i_dtime; __u32 i_block_group; __u32 i_state; __u32 i_next_alloc_block; __u32 i_next_alloc_goal; __u32 i_dir_start_lookup; struct list_head i_orphan; loff_t i_disksize; struct rw_semaphore truncate_sem;};# 293 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/hpfs_fs_i.h" 1struct hpfs_inode_info { unsigned long mmu_private; ino_t i_parent_dir; unsigned i_dno; unsigned i_dpos; unsigned i_dsubdno; unsigned i_file_sec; unsigned i_disk_sec; unsigned i_n_secs; unsigned i_ea_size; unsigned i_conv : 2; unsigned i_ea_mode : 1; unsigned i_ea_uid : 1; unsigned i_ea_gid : 1; unsigned i_dirty : 1; struct semaphore i_sem; loff_t **i_rddir_off;}; # 294 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/ntfs_fs_i.h" 1 struct ntfs_attribute;struct ntfs_sb_info; typedef u8 ntfs_u8;typedef u16 ntfs_u16;typedef u32 ntfs_u32;typedef u64 ntfs_u64;typedef s8 ntfs_s8;typedef s16 ntfs_s16;typedef s32 ntfs_s32;typedef s64 ntfs_s64;typedef __kernel_mode_t ntmode_t;typedef uid_t ntfs_uid_t;typedef gid_t ntfs_gid_t;typedef __kernel_size_t ntfs_size_t;typedef __kernel_time_t ntfs_time_t; typedef u16 ntfs_wchar_t; typedef s64 ntfs_offset_t; typedef u64 ntfs_time64_t; typedef s32 ntfs_cluster_t; struct ntfs_inode_info { struct ntfs_sb_info *vol; unsigned long i_number; __u16 sequence_number; unsigned char *attr; int attr_count; struct ntfs_attribute *attrs; int record_count; int *records; union { struct { int recordsize; int clusters_per_record; } index; } u; };# 295 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/msdos_fs_i.h" 1 struct msdos_inode_info { unsigned long mmu_private; int i_start; int i_logstart; int i_attrs; int i_ctime_ms; int i_location; struct inode *i_fat_inode; struct list_head i_fat_hash; };# 296 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/umsdos_fs_i.h" 1 struct dir_locking_info { wait_queue_head_t p; short int looking; short int creating; long pid; };struct umsdos_inode_info { struct msdos_inode_info msdos_info; struct dir_locking_info dir_info; int i_patched; int i_is_hlink; off_t pos; };# 297 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/iso_fs_i.h" 1enum isofs_file_format { isofs_file_normal = 0, isofs_file_sparse = 1, isofs_file_compressed = 2,}; struct iso_inode_info { unsigned int i_first_extent; unsigned char i_file_format; unsigned char i_format_parm[3]; unsigned long i_next_section_ino; off_t i_section_size;};# 298 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/nfs_fs_i.h" 1# 1 "/home/llhg/linux-2.4/linux/include/linux/nfs.h" 1 # 1 "/home/llhg/linux-2.4/linux/include/linux/sunrpc/msg_prot.h" 1 enum rpc_auth_flavor { RPC_AUTH_NULL = 0, RPC_AUTH_UNIX = 1, RPC_AUTH_SHORT = 2, RPC_AUTH_DES = 3, RPC_AUTH_KRB = 4,};enum rpc_msg_type { RPC_CALL = 0, RPC_REPLY = 1};enum rpc_reply_stat { RPC_MSG_ACCEPTED = 0, RPC_MSG_DENIED = 1};enum rpc_accept_stat { RPC_SUCCESS = 0, RPC_PROG_UNAVAIL = 1, RPC_PROG_MISMATCH = 2, RPC_PROC_UNAVAIL = 3, RPC_GARBAGE_ARGS = 4, RPC_SYSTEM_ERR = 5};enum rpc_reject_stat { RPC_MISMATCH = 0, RPC_AUTH_ERROR = 1};enum rpc_auth_stat { RPC_AUTH_OK = 0, RPC_AUTH_BADCRED = 1, RPC_AUTH_REJECTEDCRED = 2, RPC_AUTH_BADVERF = 3, RPC_AUTH_REJECTEDVERF = 4, RPC_AUTH_TOOWEAK = 5};# 10 "/home/llhg/linux-2.4/linux/include/linux/nfs.h" 2 enum nfs_stat { NFS_OK = 0, NFSERR_PERM = 1, NFSERR_NOENT = 2, NFSERR_IO = 5, NFSERR_NXIO = 6, NFSERR_EAGAIN = 11, NFSERR_ACCES = 13, NFSERR_EXIST = 17, NFSERR_XDEV = 18, NFSERR_NODEV = 19, NFSERR_NOTDIR = 20, NFSERR_ISDIR = 21, NFSERR_INVAL = 22, NFSERR_FBIG = 27, NFSERR_NOSPC = 28, NFSERR_ROFS = 30, NFSERR_MLINK = 31, NFSERR_OPNOTSUPP = 45, NFSERR_NAMETOOLONG = 63, NFSERR_NOTEMPTY = 66, NFSERR_DQUOT = 69, NFSERR_STALE = 70, NFSERR_REMOTE = 71, NFSERR_WFLUSH = 99, NFSERR_BADHANDLE = 10001, NFSERR_NOT_SYNC = 10002, NFSERR_BAD_COOKIE = 10003, NFSERR_NOTSUPP = 10004, NFSERR_TOOSMALL = 10005, NFSERR_SERVERFAULT = 10006, NFSERR_BADTYPE = 10007, NFSERR_JUKEBOX = 10008 }; enum nfs_ftype { NFNON = 0, NFREG = 1, NFDIR = 2, NFBLK = 3, NFCHR = 4, NFLNK = 5, NFSOCK = 6, NFBAD = 7, NFFIFO = 8}; struct nfs_fh { unsigned short size; unsigned char data[64 ];}; enum nfs3_stable_how { NFS_UNSTABLE = 0, NFS_DATA_SYNC = 1, NFS_FILE_SYNC = 2};# 6 "/home/llhg/linux-2.4/linux/include/linux/nfs_fs_i.h" 2 struct nfs_inode_info { __u64 fsid; __u64 fileid; struct nfs_fh fh; unsigned short flags; unsigned long read_cache_jiffies; __u64 read_cache_ctime; __u64 read_cache_mtime; __u64 read_cache_isize; unsigned long attrtimeo; unsigned long attrtimeo_timestamp; __u32 cookieverf[2]; struct list_head read; struct list_head dirty; struct list_head commit; struct list_head writeback; unsigned int nread, ndirty, ncommit, npages; struct inode *hash_next, *hash_prev; unsigned long nextscan; struct rpc_cred *mm_cred;}; struct nfs_lock_info { u32 state; u32 flags; struct nlm_host *host;}; # 299 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/sysv_fs_i.h" 1 struct sysv_inode_info { u32 i_data[10+1+1+1]; u32 i_dir_start_lookup;};# 300 "/home/llhg/linux-2.4/linux/include/linux/fs.h" 2# 1 "/home/llhg/linux-2.4/linux/include/linux/affs_fs_i.h" 1# 1 "/home/llhg/linux-2.4/linux/include/linux/a.out.h" 1# 1 "/home/llhg/linux-2.4/linux/include/asm/a.out.h" 1# 1 "/home/llhg/linux-2.4/linux/include/linux/personality.h" 1 struct exec_domain;struct pt_regs;extern int register_exec_domain(struct exec_domain *);extern int unregister_exec_domain(struct exec_domain *);extern int __set_personality(unsigned long); extern unsigned long abi_defhandler_coff;extern unsigned long abi_defhandler_elf;extern unsigned long abi_defhandler_lcall7;extern unsigned long abi_defhandler_libcso;extern int abi_fake_utsname; enum { MMAP_PAGE_ZERO = 0x0100000, ADDR_LIMIT_32BIT = 0x0800000, SHORT_INODE = 0x1000000, WHOLE_SECONDS = 0x2000000, STICKY_TIMEOUTS = 0x4000000,}; enum { PER_LINUX = 0x0000, PER_LINUX_32BIT = 0x0000 | ADDR_LIMIT_32BIT, PER_SVR4 = 0x0001 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO, PER_SVR3 = 0x0002 | STICKY_TIMEOUTS | SHORT_INODE, PER_SCOSVR3 = 0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS | SHORT_INODE, PER_OSR5 = 0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS, PER_WYSEV386 = 0x0004 | STICKY_TIMEOUTS | SHORT_INODE, PER_ISCR4 = 0x0005 | STICKY_TIMEOUTS, PER_BSD = 0x0006, PER_SUNOS = 0x0006 | STICKY_TIMEOUTS, PER_XENIX = 0x0007 | STICKY_TIMEOUTS | SHORT_INODE, PER_LINUX32 = 0x0008, PER_IRIX32 = 0x0009 | STICKY_TIMEOUTS, PER_IRIXN32 = 0x000a | STICKY_TIMEOUTS, PER_IRIX64 = 0x000b | STICKY_TIMEOUTS, PER_RISCOS = 0x000c, PER_SOLARIS = 0x000d | STICKY_TIMEOUTS, PER_UW7 = 0x000e | STICKY_TIMEOUTS | MMAP_PAGE_ZERO, PER_MASK = 0x00ff,}; typedef void (*handler_t)(int, struct pt_regs *);struct exec_domain { const char *name; handler_t handler; unsigned c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -