diff options
author | Jeff Layton <jlayton@primarydata.com> | 2014-10-16 14:49:37 +0200 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2014-10-23 20:05:11 +0200 |
commit | ccc6398ea5d58fdedc6caccba0216ab30739773b (patch) | |
tree | 03102565f5a8e9ef9979e73d4f846968f29efd82 /fs/nfsd | |
parent | NFSD: Always initialize cl_cb_addr (diff) | |
download | linux-ccc6398ea5d58fdedc6caccba0216ab30739773b.tar.xz linux-ccc6398ea5d58fdedc6caccba0216ab30739773b.zip |
nfsd: clean up comments over nfs4_file definition
They're a bit outdated wrt to some recent changes.
Signed-off-by: Jeff Layton <jlayton@primarydata.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd')
-rw-r--r-- | fs/nfsd/state.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/fs/nfsd/state.h b/fs/nfsd/state.h index 2712042a66b1..8e85e07efce6 100644 --- a/fs/nfsd/state.h +++ b/fs/nfsd/state.h @@ -463,15 +463,19 @@ static inline struct nfs4_lockowner * lockowner(struct nfs4_stateowner *so) /* * nfs4_file: a file opened by some number of (open) nfs4_stateowners. * - * These objects are global. nfsd only keeps one instance of a nfs4_file per - * inode (though it may keep multiple file descriptors open per inode). These - * are tracked in the file_hashtbl which is protected by the state_lock - * spinlock. + * These objects are global. nfsd keeps one instance of a nfs4_file per + * filehandle (though it may keep multiple file descriptors for each). Each + * inode can have multiple filehandles associated with it, so there is + * (potentially) a many to one relationship between this struct and struct + * inode. + * + * These are hashed by filehandle in the file_hashtbl, which is protected by + * the global state_lock spinlock. */ struct nfs4_file { atomic_t fi_ref; spinlock_t fi_lock; - struct hlist_node fi_hash; /* hash by "struct inode *" */ + struct hlist_node fi_hash; /* hash on fi_fhandle */ struct list_head fi_stateids; struct list_head fi_delegations; /* One each for O_RDONLY, O_WRONLY, O_RDWR: */ |