aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOGAWA Hirofumi <hirofumi@mail.parknet.co.jp>2013-05-14 16:09:57 +0900
committerDaniel Phillips <daniel@tux3.org>2013-05-14 16:09:57 +0900
commit7d2320a1ef40ad83ff635770ee50d21353e3df7e (patch)
treeb615bd7b80740ccbfdd6db3247ba239f527c1816
parent74adb4d4cb157916faf19429b02967db881644c5 (diff)
downloadlinux-tux3-7d2320a1ef40ad83ff635770ee50d21353e3df7e.tar.gz
tux3: Introduce ilookup5{_nowait} for userland
This implements ilookup5{_nowait} for userland, and replaces hacked version of tux3_ilookup with those. With this changes, we can share code with kernel. Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
-rw-r--r--fs/tux3/inode.c10
-rw-r--r--fs/tux3/tux3.h2
2 files changed, 12 insertions, 0 deletions
diff --git a/fs/tux3/inode.c b/fs/tux3/inode.c
index ef2019bfa2ad8b..1160c7b9a49f34 100644
--- a/fs/tux3/inode.c
+++ b/fs/tux3/inode.c
@@ -466,6 +466,16 @@ struct inode *tux3_iget(struct sb *sb, inum_t inum)
return inode;
}
+struct inode *tux3_ilookup_nowait(struct sb *sb, inum_t inum)
+{
+ return ilookup5_nowait(vfs_sb(sb), inum, tux_test, &inum);
+}
+
+struct inode *tux3_ilookup(struct sb *sb, inum_t inum)
+{
+ return ilookup5(vfs_sb(sb), inum, tux_test, &inum);
+}
+
static int save_inode(struct inode *inode, struct tux3_iattr_data *idata,
unsigned delta)
{
diff --git a/fs/tux3/tux3.h b/fs/tux3/tux3.h
index c73ab1c1f12cab..7acef7b99b9039 100644
--- a/fs/tux3/tux3.h
+++ b/fs/tux3/tux3.h
@@ -811,6 +811,8 @@ struct inode *tux_create_inode(struct inode *dir, struct tux_iattr *iattr,
struct inode *tux_create_specific_inode(struct inode *dir, inum_t inum,
struct tux_iattr *iattr, dev_t rdev);
struct inode *tux3_iget(struct sb *sb, inum_t inum);
+struct inode *tux3_ilookup_nowait(struct sb *sb, inum_t inum);
+struct inode *tux3_ilookup(struct sb *sb, inum_t inum);
int tux3_save_inode(struct inode *inode, struct tux3_iattr_data *idata,
unsigned delta);
int tux3_purge_inode(struct inode *inode, struct tux3_iattr_data *idata,