Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
vfs.c File Reference
#include <linux/fs.h>
#include <linux/file.h>
#include <linux/splice.h>
#include <linux/fcntl.h>
#include <linux/namei.h>
#include <linux/delay.h>
#include <linux/fsnotify.h>
#include <linux/posix_acl_xattr.h>
#include <linux/xattr.h>
#include <linux/jhash.h>
#include <linux/ima.h>
#include <linux/slab.h>
#include <asm/uaccess.h>
#include <linux/exportfs.h>
#include <linux/writeback.h>
#include "nfsd.h"
#include "vfs.h"

Go to the source code of this file.

Data Structures

struct  raparms
 
struct  raparm_hbucket
 
struct  buffered_dirent
 
struct  readdir_data
 

Macros

#define NFSDDBG_FACILITY   NFSDDBG_FILEOP
 
#define RAPARM_HASH_BITS   4
 
#define RAPARM_HASH_SIZE   (1<<RAPARM_HASH_BITS)
 
#define RAPARM_HASH_MASK   (RAPARM_HASH_SIZE-1)
 
#define BOTH_TIME_SET   (ATTR_ATIME_SET | ATTR_MTIME_SET)
 
#define MAX_TOUCH_TIME_ERROR   (30*60)
 

Functions

int nfsd_cross_mnt (struct svc_rqst *rqstp, struct dentry **dpp, struct svc_export **expp)
 
int nfsd_mountpoint (struct dentry *dentry, struct svc_export *exp)
 
__be32 nfsd_lookup_dentry (struct svc_rqst *rqstp, struct svc_fh *fhp, const char *name, unsigned int len, struct svc_export **exp_ret, struct dentry **dentry_ret)
 
__be32 nfsd_lookup (struct svc_rqst *rqstp, struct svc_fh *fhp, const char *name, unsigned int len, struct svc_fh *resfh)
 
__be32 nfsd_setattr (struct svc_rqst *rqstp, struct svc_fh *fhp, struct iattr *iap, int check_guard, time_t guardtime)
 
__be32 nfsd_open (struct svc_rqst *rqstp, struct svc_fh *fhp, umode_t type, int may_flags, struct file **filp)
 
void nfsd_close (struct file *filp)
 
__be32 nfsd_read (struct svc_rqst *rqstp, struct svc_fh *fhp, loff_t offset, struct kvec *vec, int vlen, unsigned long *count)
 
__be32 nfsd_read_file (struct svc_rqst *rqstp, struct svc_fh *fhp, struct file *file, loff_t offset, struct kvec *vec, int vlen, unsigned long *count)
 
__be32 nfsd_write (struct svc_rqst *rqstp, struct svc_fh *fhp, struct file *file, loff_t offset, struct kvec *vec, int vlen, unsigned long *cnt, int *stablep)
 
__be32 nfsd_create (struct svc_rqst *rqstp, struct svc_fh *fhp, char *fname, int flen, struct iattr *iap, int type, dev_t rdev, struct svc_fh *resfhp)
 
__be32 nfsd_readlink (struct svc_rqst *rqstp, struct svc_fh *fhp, char *buf, int *lenp)
 
__be32 nfsd_symlink (struct svc_rqst *rqstp, struct svc_fh *fhp, char *fname, int flen, char *path, int plen, struct svc_fh *resfhp, struct iattr *iap)
 
__be32 nfsd_link (struct svc_rqst *rqstp, struct svc_fh *ffhp, char *name, int len, struct svc_fh *tfhp)
 
__be32 nfsd_rename (struct svc_rqst *rqstp, struct svc_fh *ffhp, char *fname, int flen, struct svc_fh *tfhp, char *tname, int tlen)
 
__be32 nfsd_unlink (struct svc_rqst *rqstp, struct svc_fh *fhp, int type, char *fname, int flen)
 
__be32 nfsd_readdir (struct svc_rqst *rqstp, struct svc_fh *fhp, loff_t *offsetp, struct readdir_cd *cdp, filldir_t func)
 
__be32 nfsd_statfs (struct svc_rqst *rqstp, struct svc_fh *fhp, struct kstatfs *stat, int access)
 
__be32 nfsd_permission (struct svc_rqst *rqstp, struct svc_export *exp, struct dentry *dentry, int acc)
 
void nfsd_racache_shutdown (void)
 
int nfsd_racache_init (int cache_size)
 

Variables

struct raparm_hbucket ____cacheline_aligned_in_smp
 

Macro Definition Documentation

#define BOTH_TIME_SET   (ATTR_ATIME_SET | ATTR_MTIME_SET)
#define MAX_TOUCH_TIME_ERROR   (30*60)
#define NFSDDBG_FACILITY   NFSDDBG_FILEOP

Definition at line 44 of file vfs.c.

#define RAPARM_HASH_BITS   4

Definition at line 69 of file vfs.c.

#define RAPARM_HASH_MASK   (RAPARM_HASH_SIZE-1)

Definition at line 71 of file vfs.c.

#define RAPARM_HASH_SIZE   (1<<RAPARM_HASH_BITS)

Definition at line 70 of file vfs.c.

Function Documentation

void nfsd_close ( struct file filp)

Definition at line 827 of file vfs.c.

__be32 nfsd_create ( struct svc_rqst rqstp,
struct svc_fh fhp,
char fname,
int  flen,
struct iattr iap,
int  type,
dev_t  rdev,
struct svc_fh resfhp 
)

Definition at line 1255 of file vfs.c.

int nfsd_cross_mnt ( struct svc_rqst rqstp,
struct dentry **  dpp,
struct svc_export **  expp 
)

Definition at line 81 of file vfs.c.

__be32 nfsd_link ( struct svc_rqst rqstp,
struct svc_fh ffhp,
char name,
int  len,
struct svc_fh tfhp 
)

Definition at line 1671 of file vfs.c.

__be32 nfsd_lookup ( struct svc_rqst rqstp,
struct svc_fh fhp,
const char name,
unsigned int  len,
struct svc_fh resfh 
)

Definition at line 246 of file vfs.c.

__be32 nfsd_lookup_dentry ( struct svc_rqst rqstp,
struct svc_fh fhp,
const char name,
unsigned int  len,
struct svc_export **  exp_ret,
struct dentry **  dentry_ret 
)

Definition at line 179 of file vfs.c.

int nfsd_mountpoint ( struct dentry dentry,
struct svc_export exp 
)

Definition at line 167 of file vfs.c.

__be32 nfsd_open ( struct svc_rqst rqstp,
struct svc_fh fhp,
umode_t  type,
int  may_flags,
struct file **  filp 
)

Definition at line 745 of file vfs.c.

__be32 nfsd_permission ( struct svc_rqst rqstp,
struct svc_export exp,
struct dentry dentry,
int  acc 
)

Definition at line 2097 of file vfs.c.

int nfsd_racache_init ( int  cache_size)

Definition at line 2200 of file vfs.c.

void nfsd_racache_shutdown ( void  )

Definition at line 2179 of file vfs.c.

__be32 nfsd_read ( struct svc_rqst rqstp,
struct svc_fh fhp,
loff_t  offset,
struct kvec vec,
int  vlen,
unsigned long count 
)

Definition at line 1077 of file vfs.c.

__be32 nfsd_read_file ( struct svc_rqst rqstp,
struct svc_fh fhp,
struct file file,
loff_t  offset,
struct kvec vec,
int  vlen,
unsigned long count 
)

Definition at line 1115 of file vfs.c.

__be32 nfsd_readdir ( struct svc_rqst rqstp,
struct svc_fh fhp,
loff_t *  offsetp,
struct readdir_cd cdp,
filldir_t  func 
)

Definition at line 2035 of file vfs.c.

__be32 nfsd_readlink ( struct svc_rqst rqstp,
struct svc_fh fhp,
char buf,
int lenp 
)

Definition at line 1558 of file vfs.c.

__be32 nfsd_rename ( struct svc_rqst rqstp,
struct svc_fh ffhp,
char fname,
int  flen,
struct svc_fh tfhp,
char tname,
int  tlen 
)

Definition at line 1749 of file vfs.c.

__be32 nfsd_setattr ( struct svc_rqst rqstp,
struct svc_fh fhp,
struct iattr iap,
int  check_guard,
time_t  guardtime 
)

Definition at line 304 of file vfs.c.

__be32 nfsd_statfs ( struct svc_rqst rqstp,
struct svc_fh fhp,
struct kstatfs stat,
int  access 
)

Definition at line 2072 of file vfs.c.

__be32 nfsd_symlink ( struct svc_rqst rqstp,
struct svc_fh fhp,
char fname,
int  flen,
char path,
int  plen,
struct svc_fh resfhp,
struct iattr iap 
)

Definition at line 1604 of file vfs.c.

__be32 nfsd_unlink ( struct svc_rqst rqstp,
struct svc_fh fhp,
int  type,
char fname,
int  flen 
)

Definition at line 1855 of file vfs.c.

__be32 nfsd_write ( struct svc_rqst rqstp,
struct svc_fh fhp,
struct file file,
loff_t  offset,
struct kvec vec,
int  vlen,
unsigned long cnt,
int stablep 
)

Definition at line 1139 of file vfs.c.

Variable Documentation

struct raparm_hbucket ____cacheline_aligned_in_smp