Skip to content

Commit f07728d

Browse files
Dan Carpenterkdave
authored andcommitted
btrfs: clean up NULL checks in qgroup_unreserve_range()
Smatch complains that this code dereferences "entry" before checking whether it's NULL on the next line. Fortunately, rb_entry() will never return NULL so it doesn't cause a problem. We can clean up the NULL checking a bit to silence the warning and make the code more clear. Reviewed-by: Qu Wenruo <[email protected]> Signed-off-by: Dan Carpenter <[email protected]> Reviewed-by: David Sterba <[email protected]> Signed-off-by: David Sterba <[email protected]>
1 parent fca3a45 commit f07728d

File tree

1 file changed

+4
-8
lines changed

1 file changed

+4
-8
lines changed

fs/btrfs/qgroup.c

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3435,24 +3435,20 @@ static int qgroup_unreserve_range(struct btrfs_inode *inode,
34353435
{
34363436
struct rb_node *node;
34373437
struct rb_node *next;
3438-
struct ulist_node *entry = NULL;
3438+
struct ulist_node *entry;
34393439
int ret = 0;
34403440

34413441
node = reserved->range_changed.root.rb_node;
3442+
if (!node)
3443+
return 0;
34423444
while (node) {
34433445
entry = rb_entry(node, struct ulist_node, rb_node);
34443446
if (entry->val < start)
34453447
node = node->rb_right;
3446-
else if (entry)
3447-
node = node->rb_left;
34483448
else
3449-
break;
3449+
node = node->rb_left;
34503450
}
34513451

3452-
/* Empty changeset */
3453-
if (!entry)
3454-
return 0;
3455-
34563452
if (entry->val > start && rb_prev(&entry->rb_node))
34573453
entry = rb_entry(rb_prev(&entry->rb_node), struct ulist_node,
34583454
rb_node);

0 commit comments

Comments
 (0)