summaryrefslogtreecommitdiffstats
path: root/fs/autofs4/inode.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-01-17 00:43:40 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2011-01-18 07:21:28 +0100
commit26e6c910670171410577c7df2aebe94cef76e150 (patch)
tree407ecb012b91efce80be76f0191b2efc43689b7f /fs/autofs4/inode.c
parentautofs4: mkdir and symlink always get a dentry that had passed lookup (diff)
downloadlinux-26e6c910670171410577c7df2aebe94cef76e150.tar.xz
linux-26e6c910670171410577c7df2aebe94cef76e150.zip
autofs4: split autofs4_init_ino()
split init_ino into new_ino and clean_ino; the former is what used to be init_ino(NULL, sbi), the latter is for cases where we passed non-NULL ino. Lose unused arguments. Acked-by: Ian Kent <raven@themaw.net> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/autofs4/inode.c')
-rw-r--r--fs/autofs4/inode.c32
1 files changed, 10 insertions, 22 deletions
diff --git a/fs/autofs4/inode.c b/fs/autofs4/inode.c
index b3f9477c9745..0df0c7c46fa2 100644
--- a/fs/autofs4/inode.c
+++ b/fs/autofs4/inode.c
@@ -22,35 +22,23 @@
#include "autofs_i.h"
#include <linux/module.h>
-struct autofs_info *autofs4_init_ino(struct autofs_info *ino,
- struct autofs_sb_info *sbi)
+struct autofs_info *autofs4_new_ino(struct autofs_sb_info *sbi)
{
- int reinit = 1;
-
- if (ino == NULL) {
- reinit = 0;
- ino = kmalloc(sizeof(*ino), GFP_KERNEL);
- }
-
- if (ino == NULL)
- return NULL;
-
- if (!reinit) {
- ino->flags = 0;
- ino->dentry = NULL;
+ struct autofs_info *ino = kzalloc(sizeof(*ino), GFP_KERNEL);
+ if (ino) {
INIT_LIST_HEAD(&ino->active);
- ino->active_count = 0;
INIT_LIST_HEAD(&ino->expiring);
- atomic_set(&ino->count, 0);
+ ino->last_used = jiffies;
+ ino->sbi = sbi;
}
+ return ino;
+}
+void autofs4_clean_ino(struct autofs_info *ino)
+{
ino->uid = 0;
ino->gid = 0;
ino->last_used = jiffies;
-
- ino->sbi = sbi;
-
- return ino;
}
void autofs4_free_ino(struct autofs_info *ino)
@@ -256,7 +244,7 @@ int autofs4_fill_super(struct super_block *s, void *data, int silent)
/*
* Get the root inode and dentry, but defer checking for errors.
*/
- ino = autofs4_init_ino(NULL, sbi);
+ ino = autofs4_new_ino(sbi);
if (!ino)
goto fail_free;
root_inode = autofs4_get_inode(s, S_IFDIR | 0755);