ibmasmfs: don't bother passing superblock when not needed

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Al Viro 2013-07-19 18:09:56 +04:00
parent a118cfdf99
commit 0507c78ae8

View file

@ -149,8 +149,7 @@ static struct inode *ibmasmfs_make_inode(struct super_block *sb, int mode)
return ret; return ret;
} }
static struct dentry *ibmasmfs_create_file (struct super_block *sb, static struct dentry *ibmasmfs_create_file(struct dentry *parent,
struct dentry *parent,
const char *name, const char *name,
const struct file_operations *fops, const struct file_operations *fops,
void *data, void *data,
@ -163,7 +162,7 @@ static struct dentry *ibmasmfs_create_file (struct super_block *sb,
if (!dentry) if (!dentry)
return NULL; return NULL;
inode = ibmasmfs_make_inode(sb, S_IFREG | mode); inode = ibmasmfs_make_inode(parent->d_sb, S_IFREG | mode);
if (!inode) { if (!inode) {
dput(dentry); dput(dentry);
return NULL; return NULL;
@ -176,8 +175,7 @@ static struct dentry *ibmasmfs_create_file (struct super_block *sb,
return dentry; return dentry;
} }
static struct dentry *ibmasmfs_create_dir (struct super_block *sb, static struct dentry *ibmasmfs_create_dir(struct dentry *parent,
struct dentry *parent,
const char *name) const char *name)
{ {
struct dentry *dentry; struct dentry *dentry;
@ -187,7 +185,7 @@ static struct dentry *ibmasmfs_create_dir (struct super_block *sb,
if (!dentry) if (!dentry)
return NULL; return NULL;
inode = ibmasmfs_make_inode(sb, S_IFDIR | 0500); inode = ibmasmfs_make_inode(parent->d_sb, S_IFDIR | 0500);
if (!inode) { if (!inode) {
dput(dentry); dput(dentry);
return NULL; return NULL;
@ -612,20 +610,20 @@ static void ibmasmfs_create_files (struct super_block *sb)
struct dentry *dir; struct dentry *dir;
struct dentry *remote_dir; struct dentry *remote_dir;
sp = list_entry(entry, struct service_processor, node); sp = list_entry(entry, struct service_processor, node);
dir = ibmasmfs_create_dir(sb, sb->s_root, sp->dirname); dir = ibmasmfs_create_dir(sb->s_root, sp->dirname);
if (!dir) if (!dir)
continue; continue;
ibmasmfs_create_file(sb, dir, "command", &command_fops, sp, S_IRUSR|S_IWUSR); ibmasmfs_create_file(dir, "command", &command_fops, sp, S_IRUSR|S_IWUSR);
ibmasmfs_create_file(sb, dir, "event", &event_fops, sp, S_IRUSR|S_IWUSR); ibmasmfs_create_file(dir, "event", &event_fops, sp, S_IRUSR|S_IWUSR);
ibmasmfs_create_file(sb, dir, "reverse_heartbeat", &r_heartbeat_fops, sp, S_IRUSR|S_IWUSR); ibmasmfs_create_file(dir, "reverse_heartbeat", &r_heartbeat_fops, sp, S_IRUSR|S_IWUSR);
remote_dir = ibmasmfs_create_dir(sb, dir, "remote_video"); remote_dir = ibmasmfs_create_dir(dir, "remote_video");
if (!remote_dir) if (!remote_dir)
continue; continue;
ibmasmfs_create_file(sb, remote_dir, "width", &remote_settings_fops, (void *)display_width(sp), S_IRUSR|S_IWUSR); ibmasmfs_create_file(remote_dir, "width", &remote_settings_fops, (void *)display_width(sp), S_IRUSR|S_IWUSR);
ibmasmfs_create_file(sb, remote_dir, "height", &remote_settings_fops, (void *)display_height(sp), S_IRUSR|S_IWUSR); ibmasmfs_create_file(remote_dir, "height", &remote_settings_fops, (void *)display_height(sp), S_IRUSR|S_IWUSR);
ibmasmfs_create_file(sb, remote_dir, "depth", &remote_settings_fops, (void *)display_depth(sp), S_IRUSR|S_IWUSR); ibmasmfs_create_file(remote_dir, "depth", &remote_settings_fops, (void *)display_depth(sp), S_IRUSR|S_IWUSR);
} }
} }