diff options
author | Greg Kurz <gkurz@linux.vnet.ibm.com> | 2020-09-23 22:11:44 +0800 |
---|---|---|
committer | Dominique Martinet <asmadeus@codewreck.org> | 2020-11-03 09:29:46 +0100 |
commit | 987a64850996db22bbcf2c1d0a051446a343fa2c (patch) | |
tree | 70596e685ff828cc5225956c3426d5f559eb5f28 /fs/9p/fid.h | |
parent | 154372e67d4053e56591245eb413686621941333 (diff) | |
download | lwn-987a64850996db22bbcf2c1d0a051446a343fa2c.tar.gz lwn-987a64850996db22bbcf2c1d0a051446a343fa2c.zip |
fs/9p: track open fids
This patch adds accounting of open fids in a list hanging off the i_private
field of the corresponding inode. This allows faster lookups compared to
searching the full 9p client list.
The lookup code is modified accordingly.
Link: http://lkml.kernel.org/r/20200923141146.90046-3-jianyong.wu@arm.com
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
Signed-off-by: Jianyong Wu <jianyong.wu@arm.com>
Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
Diffstat (limited to 'fs/9p/fid.h')
-rw-r--r-- | fs/9p/fid.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/9p/fid.h b/fs/9p/fid.h index 928b1093f511..dfa11df02818 100644 --- a/fs/9p/fid.h +++ b/fs/9p/fid.h @@ -15,6 +15,7 @@ static inline struct p9_fid *v9fs_parent_fid(struct dentry *dentry) } void v9fs_fid_add(struct dentry *dentry, struct p9_fid *fid); struct p9_fid *v9fs_writeback_fid(struct dentry *dentry); +void v9fs_open_fid_add(struct inode *inode, struct p9_fid *fid); static inline struct p9_fid *clone_fid(struct p9_fid *fid) { return IS_ERR(fid) ? fid : p9_client_walk(fid, 0, NULL, 1); |