⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 internal.h

📁 Linux Kernel 2.6.9 for OMAP1710
💻 H
字号:
/* internal.h: internal AFS stuff * * Copyright (C) 2002 Red Hat, Inc. All Rights Reserved. * Written by David Howells (dhowells@redhat.com) * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version * 2 of the License, or (at your option) any later version. */#ifndef AFS_INTERNAL_H#define AFS_INTERNAL_H#include <linux/compiler.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/pagemap.h>/* * debug tracing */#define kenter(FMT, a...)	printk("==> %s("FMT")\n",__FUNCTION__ , ## a)#define kleave(FMT, a...)	printk("<== %s()"FMT"\n",__FUNCTION__ , ## a)#define kdebug(FMT, a...)	printk(FMT"\n" , ## a)#define kproto(FMT, a...)	printk("### "FMT"\n" , ## a)#define knet(FMT, a...)		printk(FMT"\n" , ## a)#ifdef __KDEBUG#define _enter(FMT, a...)	kenter(FMT , ## a)#define _leave(FMT, a...)	kleave(FMT , ## a)#define _debug(FMT, a...)	kdebug(FMT , ## a)#define _proto(FMT, a...)	kproto(FMT , ## a)#define _net(FMT, a...)		knet(FMT , ## a)#else#define _enter(FMT, a...)	do { } while(0)#define _leave(FMT, a...)	do { } while(0)#define _debug(FMT, a...)	do { } while(0)#define _proto(FMT, a...)	do { } while(0)#define _net(FMT, a...)		do { } while(0)#endifstatic inline void afs_discard_my_signals(void){	while (signal_pending(current)) {		siginfo_t sinfo;		spin_lock_irq(&current->sighand->siglock);		dequeue_signal(current,&current->blocked, &sinfo);		spin_unlock_irq(&current->sighand->siglock);	}}/* * cell.c */extern struct rw_semaphore afs_proc_cells_sem;extern struct list_head afs_proc_cells;#ifdef AFS_CACHING_SUPPORTextern struct cachefs_index_def afs_cache_cell_index_def;#endif/* * dir.c */extern struct inode_operations afs_dir_inode_operations;extern struct file_operations afs_dir_file_operations;/* * file.c */extern struct address_space_operations afs_fs_aops;extern struct inode_operations afs_file_inode_operations;extern struct file_operations afs_file_file_operations;#ifdef AFS_CACHING_SUPPORTextern int afs_cache_get_page_cookie(struct page *page,				     struct cachefs_page **_page_cookie);#endif/* * inode.c */extern int afs_iget(struct super_block *sb, struct afs_fid *fid,		    struct inode **_inode);extern int afs_inode_getattr(struct vfsmount *mnt, struct dentry *dentry,			     struct kstat *stat);extern void afs_clear_inode(struct inode *inode);/* * key_afs.c */#ifdef CONFIG_KEYSextern int afs_key_register(void);extern void afs_key_unregister(void);#endif/* * main.c */#ifdef AFS_CACHING_SUPPORTextern struct cachefs_netfs afs_cache_netfs;#endif/* * mntpt.c */extern struct inode_operations afs_mntpt_inode_operations;extern struct file_operations afs_mntpt_file_operations;extern struct afs_timer afs_mntpt_expiry_timer;extern struct afs_timer_ops afs_mntpt_expiry_timer_ops;extern unsigned long afs_mntpt_expiry_timeout;extern int afs_mntpt_check_symlink(struct afs_vnode *vnode);/* * super.c */extern int afs_fs_init(void);extern void afs_fs_exit(void);#define AFS_CB_HASH_COUNT (PAGE_SIZE / sizeof(struct list_head))extern struct list_head afs_cb_hash_tbl[];extern spinlock_t afs_cb_hash_lock;#define afs_cb_hash(SRV,FID) \	afs_cb_hash_tbl[((unsigned long)(SRV) + \			(FID)->vid + (FID)->vnode + (FID)->unique) % \			AFS_CB_HASH_COUNT]/* * proc.c */extern int afs_proc_init(void);extern void afs_proc_cleanup(void);extern int afs_proc_cell_setup(struct afs_cell *cell);extern void afs_proc_cell_remove(struct afs_cell *cell);#endif /* AFS_INTERNAL_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -