mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 20:48:49 +08:00
ibmasmfs: don't bother passing superblock when not needed
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
a118cfdf99
commit
0507c78ae8
@ -149,8 +149,7 @@ static struct inode *ibmasmfs_make_inode(struct super_block *sb, int mode)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static struct dentry *ibmasmfs_create_file (struct super_block *sb,
|
||||
struct dentry *parent,
|
||||
static struct dentry *ibmasmfs_create_file(struct dentry *parent,
|
||||
const char *name,
|
||||
const struct file_operations *fops,
|
||||
void *data,
|
||||
@ -163,7 +162,7 @@ static struct dentry *ibmasmfs_create_file (struct super_block *sb,
|
||||
if (!dentry)
|
||||
return NULL;
|
||||
|
||||
inode = ibmasmfs_make_inode(sb, S_IFREG | mode);
|
||||
inode = ibmasmfs_make_inode(parent->d_sb, S_IFREG | mode);
|
||||
if (!inode) {
|
||||
dput(dentry);
|
||||
return NULL;
|
||||
@ -176,8 +175,7 @@ static struct dentry *ibmasmfs_create_file (struct super_block *sb,
|
||||
return dentry;
|
||||
}
|
||||
|
||||
static struct dentry *ibmasmfs_create_dir (struct super_block *sb,
|
||||
struct dentry *parent,
|
||||
static struct dentry *ibmasmfs_create_dir(struct dentry *parent,
|
||||
const char *name)
|
||||
{
|
||||
struct dentry *dentry;
|
||||
@ -187,7 +185,7 @@ static struct dentry *ibmasmfs_create_dir (struct super_block *sb,
|
||||
if (!dentry)
|
||||
return NULL;
|
||||
|
||||
inode = ibmasmfs_make_inode(sb, S_IFDIR | 0500);
|
||||
inode = ibmasmfs_make_inode(parent->d_sb, S_IFDIR | 0500);
|
||||
if (!inode) {
|
||||
dput(dentry);
|
||||
return NULL;
|
||||
@ -612,20 +610,20 @@ static void ibmasmfs_create_files (struct super_block *sb)
|
||||
struct dentry *dir;
|
||||
struct dentry *remote_dir;
|
||||
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)
|
||||
continue;
|
||||
|
||||
ibmasmfs_create_file(sb, 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(sb, dir, "reverse_heartbeat", &r_heartbeat_fops, sp, S_IRUSR|S_IWUSR);
|
||||
ibmasmfs_create_file(dir, "command", &command_fops, sp, S_IRUSR|S_IWUSR);
|
||||
ibmasmfs_create_file(dir, "event", &event_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)
|
||||
continue;
|
||||
|
||||
ibmasmfs_create_file(sb, 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(sb, remote_dir, "depth", &remote_settings_fops, (void *)display_depth(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(remote_dir, "height", &remote_settings_fops, (void *)display_height(sp), S_IRUSR|S_IWUSR);
|
||||
ibmasmfs_create_file(remote_dir, "depth", &remote_settings_fops, (void *)display_depth(sp), S_IRUSR|S_IWUSR);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user