diff options
author | Theodore Ts'o <tytso@mit.edu> | 2015-02-02 00:37:01 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2015-02-05 02:45:00 -0500 |
commit | fe032c422c5ba562ba9c2d316f55e258e03259c6 (patch) | |
tree | 83fb3e7bde52805f447c5f1d8ae42f46462db1c6 /include | |
parent | 0ae45f63d4ef8d8eeec49c7d8b44a1775fff13e8 (diff) | |
download | lwn-fe032c422c5ba562ba9c2d316f55e258e03259c6.tar.gz lwn-fe032c422c5ba562ba9c2d316f55e258e03259c6.zip |
vfs: add find_inode_nowait() function
Add a new function find_inode_nowait() which is an even more general
version of ilookup5_nowait(). It is designed for callers which need
very fine grained control over when the function is allowed to block
or increment the inode's reference count.
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/fs.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h index cd027ce2c705..5ea8b6e46a3d 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -2441,6 +2441,11 @@ extern struct inode *ilookup(struct super_block *sb, unsigned long ino); extern struct inode * iget5_locked(struct super_block *, unsigned long, int (*test)(struct inode *, void *), int (*set)(struct inode *, void *), void *); extern struct inode * iget_locked(struct super_block *, unsigned long); +extern struct inode *find_inode_nowait(struct super_block *, + unsigned long, + int (*match)(struct inode *, + unsigned long, void *), + void *data); extern int insert_inode_locked4(struct inode *, unsigned long, int (*test)(struct inode *, void *), void *); extern int insert_inode_locked(struct inode *); #ifdef CONFIG_DEBUG_LOCK_ALLOC |