From: Dan Carpenter Date: Tue, 10 Nov 2009 09:01:43 +0000 (+0000) Subject: Btrfs: avoid null deref in unpin_extent_cache() X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=4eb3991c5def39bcf553c14ebe2618fcb47b627f;p=openwrt%2Fstaging%2Fblogic.git Btrfs: avoid null deref in unpin_extent_cache() I re-orderred the checks to avoid dereferencing "em" if it was null. Found by smatch static checker. Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason --- diff --git a/fs/btrfs/extent_map.c b/fs/btrfs/extent_map.c index 2c726b7b9faa..ccbdcb54ec5d 100644 --- a/fs/btrfs/extent_map.c +++ b/fs/btrfs/extent_map.c @@ -208,7 +208,7 @@ int unpin_extent_cache(struct extent_map_tree *tree, u64 start, u64 len) write_lock(&tree->lock); em = lookup_extent_mapping(tree, start, len); - WARN_ON(em->start != start || !em); + WARN_ON(!em || em->start != start); if (!em) goto out;