From 120e27d76fb5748db1160baf1efe0ceef59452f0 Mon Sep 17 00:00:00 2001 From: chandan Date: Fri, 20 Sep 2013 23:52:11 +0530 Subject: [PATCH] btrfs-progs: clear_extent_bits: Fix memory leak. The 'prealloc' extent_state structure is leaked for the case when the 'desired range' encapsulates/covers the 'extent range'. Signed-off-by: chandan Signed-off-by: David Sterba Signed-off-by: Chris Mason --- extent_io.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/extent_io.c b/extent_io.c index acc4702..1c481d5 100644 --- a/extent_io.c +++ b/extent_io.c @@ -210,9 +210,11 @@ int clear_extent_bits(struct extent_io_tree *tree, u64 start, int set = 0; again: - prealloc = alloc_extent_state(); - if (!prealloc) - return -ENOMEM; + if (!prealloc) { + prealloc = alloc_extent_state(); + if (!prealloc) + return -ENOMEM; + } /* * this search will find the extents that end after -- 2.7.4