diff options
Diffstat (limited to 'fs/proc/inode.c')
| -rw-r--r-- | fs/proc/inode.c | 16 | 
1 files changed, 3 insertions, 13 deletions
| diff --git a/fs/proc/inode.c b/fs/proc/inode.c index 84fd3235a590..8461a7b82fdb 100644 --- a/fs/proc/inode.c +++ b/fs/proc/inode.c @@ -486,8 +486,6 @@ struct inode *proc_get_inode(struct super_block *sb, struct proc_dir_entry *de)  int proc_fill_super(struct super_block *s)  { -	struct inode * root_inode; -  	s->s_flags |= MS_NODIRATIME | MS_NOSUID | MS_NOEXEC;  	s->s_blocksize = 1024;  	s->s_blocksize_bits = 10; @@ -496,19 +494,11 @@ int proc_fill_super(struct super_block *s)  	s->s_time_gran = 1;  	pde_get(&proc_root); -	root_inode = proc_get_inode(s, &proc_root); -	if (!root_inode) -		goto out_no_root; -	root_inode->i_uid = 0; -	root_inode->i_gid = 0; -	s->s_root = d_alloc_root(root_inode); -	if (!s->s_root) -		goto out_no_root; -	return 0; +	s->s_root = d_make_root(proc_get_inode(s, &proc_root)); +	if (s->s_root) +		return 0; -out_no_root:  	printk("proc_read_super: get root inode failed\n"); -	iput(root_inode);  	pde_put(&proc_root);  	return -ENOMEM;  } | 
