Wang Shilong
2013-Mar-31 10:36 UTC
[PATCH V2] Btrfs: fix double free in the iterate_extent_inodes()
From: Wang Shilong <wangsl-fnst@cn.fujitsu.com> If btrfs_find_all_roots() fails, ''roots'' has been freed or ''roots'' fails to allocate. We don''t need to free it outside btrfs_find_all_roots() again.Fix it. Signed-off-by: Wang Shilong <wangsl-fnst@cn.fujitsu.com> --- Changelog: V1->v2: remove reduplicate code that set ''roots'' to be NULL --- fs/btrfs/backref.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/fs/btrfs/backref.c b/fs/btrfs/backref.c index 5ff46ee..cbb7108 100644 --- a/fs/btrfs/backref.c +++ b/fs/btrfs/backref.c @@ -1510,11 +1510,9 @@ int iterate_extent_inodes(struct btrfs_fs_info *fs_info, iterate, ctx); } ulist_free(roots); - roots = NULL; } free_leaf_list(refs); - ulist_free(roots); out: if (!search_commit_root) { btrfs_put_tree_mod_seq(fs_info, &tree_mod_seq_elem); -- 1.7.11.7 -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html