public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Btrfs-progs: free path if we don't find root item
@ 2014-02-28 17:27 Rakesh Pandit
  2014-03-03 18:02 ` David Sterba
  0 siblings, 1 reply; 2+ messages in thread
From: Rakesh Pandit @ 2014-02-28 17:27 UTC (permalink / raw)
  To: linux-btrfs

In btrfs_find_last_root before returning with -ENOENT (if root item is
not found) free path and also remove btrfs_release_path before
btrfs_free_path because btrfs_free_path anyway calls it.

Signed-off-by: Rakesh Pandit <rakesh@tuxera.com>
---
 root-tree.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/root-tree.c b/root-tree.c
index 858fe2f..f16f0ba 100644
--- a/root-tree.c
+++ b/root-tree.c
@@ -40,8 +40,10 @@ int btrfs_find_last_root(struct btrfs_root *root, u64 objectid,
 	ret = btrfs_search_slot(NULL, root, &search_key, path, 0, 0);
 	if (ret < 0)
 		goto out;
-	if (path->slots[0] == 0)
+	if (path->slots[0] == 0) {
+		btrfs_free_path(path);
 		return -ENOENT;
+	}
 
 	BUG_ON(ret == 0);
 	l = path->nodes[0];
@@ -56,7 +58,6 @@ int btrfs_find_last_root(struct btrfs_root *root, u64 objectid,
 	memcpy(key, &found_key, sizeof(found_key));
 	ret = 0;
 out:
-	btrfs_release_path(path);
 	btrfs_free_path(path);
 	return ret;
 }
@@ -120,7 +121,6 @@ int btrfs_update_root(struct btrfs_trans_handle *trans, struct btrfs_root
 	write_extent_buffer(l, item, ptr, sizeof(*item));
 	btrfs_mark_buffer_dirty(path->nodes[0]);
 out:
-	btrfs_release_path(path);
 	btrfs_free_path(path);
 	return ret;
 }
-- 
1.8.5.3


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-03-03 18:02 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-28 17:27 [PATCH] Btrfs-progs: free path if we don't find root item Rakesh Pandit
2014-03-03 18:02 ` David Sterba

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox