Skip to content

Commit

Permalink
count_snapshots: Properly update the leaf pointer after btrfs_next_leaf
Browse files Browse the repository at this point in the history
Signed-off-by: Chris Mason <chris.mason@oracle.com>
  • Loading branch information
Chris Mason committed Sep 25, 2008
1 parent 98ed517 commit bd09835
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
4 changes: 2 additions & 2 deletions fs/btrfs/extent-tree.c
Original file line number Diff line number Diff line change
Expand Up @@ -693,7 +693,6 @@ u32 btrfs_count_snapshots_in_path(struct btrfs_root *root,
u64 root_objectid = root->root_key.objectid;
u32 total_count = 0;
u32 cur_count;
u32 refs;
u32 nritems;
int ret;
struct btrfs_key key;
Expand Down Expand Up @@ -729,8 +728,8 @@ u32 btrfs_count_snapshots_in_path(struct btrfs_root *root,
}

item = btrfs_item_ptr(l, path->slots[0], struct btrfs_extent_item);
refs = btrfs_extent_refs(l, item);
while (1) {
l = path->nodes[0];
nritems = btrfs_header_nritems(l);
if (path->slots[0] >= nritems) {
ret = btrfs_next_leaf(extent_root, path);
Expand All @@ -741,6 +740,7 @@ u32 btrfs_count_snapshots_in_path(struct btrfs_root *root,
btrfs_item_key_to_cpu(l, &found_key, path->slots[0]);
if (found_key.objectid != bytenr)
break;

if (found_key.type != BTRFS_EXTENT_REF_KEY) {
path->slots[0]++;
continue;
Expand Down
2 changes: 1 addition & 1 deletion fs/btrfs/inode.c
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ static int run_delalloc_nocow(struct inode *inode, u64 start, u64 end)
}

start = extent_end;
} else if (found_type == BTRFS_FILE_EXTENT_INLINE) {
} else {
goto not_found;
}
loop:
Expand Down

0 comments on commit bd09835

Please sign in to comment.