root/include/linux/nfs_fs.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   1 #ifndef _LINUX_NFS_FS_H
   2 #define _LINUX_NFS_FS_H
   3 
   4 /*
   5  *  linux/include/linux/nfs_fs.h
   6  *
   7  *  Copyright (C) 1992  Rick Sladkey
   8  *
   9  *  OS-specific nfs filesystem definitions and declarations
  10  */
  11 
  12 #include <linux/nfs.h>
  13 
  14 #include <linux/in.h>
  15 #include <linux/nfs_mount.h>
  16 
  17 /*
  18  * The readdir cache size controls how many directory entries are cached.
  19  * Its size is limited by the number of nfs_entry structures that can fit
  20  * in one page, currently, the limit is 256 when using 4KB pages.
  21  */
  22 
  23 #define NFS_READDIR_CACHE_SIZE          64
  24 
  25 #define NFS_MAX_FILE_IO_BUFFER_SIZE     16384
  26 #define NFS_DEF_FILE_IO_BUFFER_SIZE     1024
  27 
  28 /*
  29  * The upper limit on timeouts for the exponential backoff algorithm.
  30  */
  31 
  32 #define NFS_MAX_RPC_TIMEOUT             (6*HZ)
  33 
  34 /*
  35  * Size of the lookup cache in units of number of entries cached.
  36  * It is better not to make this too large although the optimum
  37  * depends on a usage and environment.
  38  */
  39 
  40 #define NFS_LOOKUP_CACHE_SIZE           64
  41 
  42 #define NFS_SUPER_MAGIC                 0x6969
  43 
  44 #define NFS_SERVER(inode)               (&(inode)->i_sb->u.nfs_sb.s_server)
  45 #define NFS_FH(inode)                   (&(inode)->u.nfs_i.fhandle)
  46 #define NFS_READTIME(inode)             ((inode)->u.nfs_i.read_cache_jiffies)
  47 #define NFS_OLDMTIME(inode)             ((inode)->u.nfs_i.read_cache_mtime)
  48 
  49 #ifdef __KERNEL__
  50 
  51 /* linux/fs/nfs/proc.c */
  52 
  53 extern int nfs_proc_getattr(struct nfs_server *server, struct nfs_fh *fhandle,
  54                             struct nfs_fattr *fattr);
  55 extern int nfs_proc_setattr(struct nfs_server *server, struct nfs_fh *fhandle,
  56                             struct nfs_sattr *sattr, struct nfs_fattr *fattr);
  57 extern int nfs_proc_lookup(struct nfs_server *server, struct nfs_fh *dir,
  58                            const char *name, struct nfs_fh *fhandle,
  59                            struct nfs_fattr *fattr);
  60 extern int nfs_proc_readlink(struct nfs_server *server, struct nfs_fh *fhandle,
  61                         int **p0, char **string, unsigned int *len,
  62                         unsigned int maxlen);
  63 extern int nfs_proc_read(struct nfs_server *server, struct nfs_fh *fhandle,
  64                          int offset, int count, char *data,
  65                          struct nfs_fattr *fattr);
  66 extern int nfs_proc_write(struct inode * inode, int offset,
  67                           int count, const char *data, struct nfs_fattr *fattr);
  68 extern int nfs_proc_create(struct nfs_server *server, struct nfs_fh *dir,
  69                            const char *name, struct nfs_sattr *sattr,
  70                            struct nfs_fh *fhandle, struct nfs_fattr *fattr);
  71 extern int nfs_proc_remove(struct nfs_server *server, struct nfs_fh *dir,
  72                            const char *name);
  73 extern int nfs_proc_rename(struct nfs_server *server,
  74                            struct nfs_fh *old_dir, const char *old_name,
  75                            struct nfs_fh *new_dir, const char *new_name);
  76 extern int nfs_proc_link(struct nfs_server *server, struct nfs_fh *fhandle,
  77                          struct nfs_fh *dir, const char *name);
  78 extern int nfs_proc_symlink(struct nfs_server *server, struct nfs_fh *dir,
  79                             const char *name, const char *path, struct nfs_sattr *sattr);
  80 extern int nfs_proc_mkdir(struct nfs_server *server, struct nfs_fh *dir,
  81                           const char *name, struct nfs_sattr *sattr,
  82                           struct nfs_fh *fhandle, struct nfs_fattr *fattr);
  83 extern int nfs_proc_rmdir(struct nfs_server *server, struct nfs_fh *dir,
  84                           const char *name);
  85 extern int nfs_proc_readdir(struct nfs_server *server, struct nfs_fh *fhandle,
  86                             int cookie, int count, struct nfs_entry *entry);
  87 extern int nfs_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle,
  88                             struct nfs_fsinfo *res);
  89 extern int *rpc_header(int *p, int procedure, int program, int version,
  90                                 int uid, int gid, int *groups);
  91 extern int *rpc_verify(int *p);
  92 
  93 /* linux/fs/nfs/sock.c */
  94 
  95 extern int nfs_rpc_call(struct nfs_server *server, int *start, int *end, int size);
  96 
  97 /* linux/fs/nfs/inode.c */
  98 
  99 extern struct super_block *nfs_read_super(struct super_block *sb, 
 100                                           void *data,int);
 101 extern int init_nfs_fs(void);
 102 extern struct inode *nfs_fhget(struct super_block *sb, struct nfs_fh *fhandle,
 103                                struct nfs_fattr *fattr);
 104 extern void nfs_refresh_inode(struct inode *inode, struct nfs_fattr *fattr);
 105 
 106 /* linux/fs/nfs/file.c */
 107 
 108 extern struct inode_operations nfs_file_inode_operations;
 109 
 110 /* linux/fs/nfs/dir.c */
 111 
 112 extern struct inode_operations nfs_dir_inode_operations;
 113 extern void nfs_kfree_cache(void);
 114 
 115 /* linux/fs/nfs/symlink.c */
 116 
 117 extern struct inode_operations nfs_symlink_inode_operations;
 118 
 119 /* linux/fs/nfs/mmap.c */
 120 
 121 extern int nfs_mmap(struct inode * inode, struct file * file, struct vm_area_struct * vma);
 122 
 123 #endif /* __KERNEL__ */
 124 
 125 #endif

/* [previous][next][first][last][top][bottom][index][help] */