diff mbox

btrfs: remove redundant inode null check

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

Commit Message

Colin King Dec. 16, 2016, 3:24 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.

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).

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

Comments

David Sterba Dec. 20, 2016, 3:46 p.m. UTC | #1
On Fri, Dec 16, 2016 at 03:24:46PM +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.

This also means that the if (!dir) check is redundant. I've looked up
the call chain and haven't seen any instance that would lead to a NULL
dir down in the filesystem callback. So please remove both.
--
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..e90f781 100644
--- a/fs/btrfs/export.c
+++ b/fs/btrfs/export.c
@@ -235,7 +235,7 @@  static int btrfs_get_name(struct dentry *parent, char *name,
 	int ret;
 	u64 ino;
 
-	if (!dir || !inode)
+	if (!dir)
 		return -EINVAL;
 
 	if (!S_ISDIR(dir->i_mode))