diff options
Diffstat (limited to 'fs/btrfs/scrub.c')
| -rw-r--r-- | fs/btrfs/scrub.c | 3 | 
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c index 53c3501fa4c..85e072b956d 100644 --- a/fs/btrfs/scrub.c +++ b/fs/btrfs/scrub.c @@ -542,7 +542,6 @@ static void scrub_print_warning(const char *errstr, struct scrub_block *sblock)  	eb = path->nodes[0];  	ei = btrfs_item_ptr(eb, path->slots[0], struct btrfs_extent_item);  	item_size = btrfs_item_size_nr(eb, path->slots[0]); -	btrfs_release_path(path);  	if (flags & BTRFS_EXTENT_FLAG_TREE_BLOCK) {  		do { @@ -558,7 +557,9 @@ static void scrub_print_warning(const char *errstr, struct scrub_block *sblock)  				ret < 0 ? -1 : ref_level,  				ret < 0 ? -1 : ref_root);  		} while (ret != 1); +		btrfs_release_path(path);  	} else { +		btrfs_release_path(path);  		swarn.path = path;  		swarn.dev = dev;  		iterate_extent_inodes(fs_info, found_key.objectid,  |