diff options
Diffstat (limited to 'mm/shmem.c')
| -rw-r--r-- | mm/shmem.c | 10 | 
1 files changed, 3 insertions, 7 deletions
diff --git a/mm/shmem.c b/mm/shmem.c index 78307d5c5bd..7a45ad004cf 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -2175,7 +2175,6 @@ static void shmem_put_super(struct super_block *sb)  int shmem_fill_super(struct super_block *sb, void *data, int silent)  {  	struct inode *inode; -	struct dentry *root;  	struct shmem_sb_info *sbinfo;  	int err = -ENOMEM; @@ -2232,14 +2231,11 @@ int shmem_fill_super(struct super_block *sb, void *data, int silent)  		goto failed;  	inode->i_uid = sbinfo->uid;  	inode->i_gid = sbinfo->gid; -	root = d_alloc_root(inode); -	if (!root) -		goto failed_iput; -	sb->s_root = root; +	sb->s_root = d_make_root(inode); +	if (!sb->s_root) +		goto failed;  	return 0; -failed_iput: -	iput(inode);  failed:  	shmem_put_super(sb);  	return err;  |