fix leak in proc_set_super()

set_anon_super() can fail...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Al Viro 2011-06-12 09:42:17 -04:00
parent b99ca60c83
commit ff78fca2a0
1 changed files with 6 additions and 5 deletions

View File

@ -28,11 +28,12 @@ static int proc_test_super(struct super_block *sb, void *data)
static int proc_set_super(struct super_block *sb, void *data) static int proc_set_super(struct super_block *sb, void *data)
{ {
struct pid_namespace *ns; int err = set_anon_super(sb, NULL);
if (!err) {
ns = (struct pid_namespace *)data; struct pid_namespace *ns = (struct pid_namespace *)data;
sb->s_fs_info = get_pid_ns(ns); sb->s_fs_info = get_pid_ns(ns);
return set_anon_super(sb, NULL); }
return err;
} }
static struct dentry *proc_mount(struct file_system_type *fs_type, static struct dentry *proc_mount(struct file_system_type *fs_type,