diff mbox

[V2] btrfs: remove redundant inode null check

Message ID 20161220161837.24391-1-colin.king@canonical.com (mailing list archive)
State Accepted
Headers show

Commit Message

Colin King Dec. 20, 2016, 4:18 p.m. UTC
From: Colin Ian King <colin.king@canonical.com>

The check for a null inode is redundant since the function
is a callback for exportfs, which will itself crash if
dentry->d_inode or parent->d_inode is NULL.  Removing the
null check makes this consistent with other file systems.

Also remove the redundant null dir check too.

Found with static analysis by CoverityScan, CID 1389472

Kudos to Jeff Mahoney for reviewing and explaining the error in
my original patch (most of this explanation went into the above
commit message) and David Sterba for pointing out that the dir
check is also redundant.

Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 fs/btrfs/export.c | 3 ---
 1 file changed, 3 deletions(-)

Comments

David Sterba Dec. 20, 2016, 4:27 p.m. UTC | #1
On Tue, Dec 20, 2016 at 04:18:37PM +0000, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
> 
> The check for a null inode is redundant since the function
> is a callback for exportfs, which will itself crash if
> dentry->d_inode or parent->d_inode is NULL.  Removing the
> null check makes this consistent with other file systems.
> 
> Also remove the redundant null dir check too.
> 
> Found with static analysis by CoverityScan, CID 1389472
> 
> Kudos to Jeff Mahoney for reviewing and explaining the error in
> my original patch (most of this explanation went into the above
> commit message) and David Sterba for pointing out that the dir
> check is also redundant.
> 
> Signed-off-by: Colin Ian King <colin.king@canonical.com>

Reviewed-by: David Sterba <dsterba@suse.com>

Added to cleanups queue, thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/fs/btrfs/export.c b/fs/btrfs/export.c
index 340d907..4f77431 100644
--- a/fs/btrfs/export.c
+++ b/fs/btrfs/export.c
@@ -235,9 +235,6 @@  static int btrfs_get_name(struct dentry *parent, char *name,
 	int ret;
 	u64 ino;
 
-	if (!dir || !inode)
-		return -EINVAL;
-
 	if (!S_ISDIR(dir->i_mode))
 		return -EINVAL;