diff options
Diffstat (limited to 'fs/btrfs/super.c')
| -rw-r--r-- | fs/btrfs/super.c | 6 | 
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c index d34b2dfc962..f2393b39031 100644 --- a/fs/btrfs/super.c +++ b/fs/btrfs/super.c @@ -360,6 +360,8 @@ static struct dentry *get_default_root(struct super_block *sb,  	 */  	dir_id = btrfs_super_root_dir(&root->fs_info->super_copy);  	di = btrfs_lookup_dir_item(NULL, root, path, dir_id, "default", 7, 0); +	if (IS_ERR(di)) +		return ERR_CAST(di);  	if (!di) {  		/*  		 * Ok the default dir item isn't there.  This is weird since @@ -390,8 +392,8 @@ setup_root:  	location.offset = 0;  	inode = btrfs_iget(sb, &location, new_root, &new); -	if (!inode) -		return ERR_PTR(-ENOMEM); +	if (IS_ERR(inode)) +		return ERR_CAST(inode);  	/*  	 * If we're just mounting the root most subvol put the inode and return  | 
