The ''prealloc'' extent_state structure is leaked for the case when the ''desired range'' encapsulates/covers the ''extent range''. Signed-off-by: chandan <chandan@linux.vnet.ibm.com> --- v1->v2: Fix commit message. --- 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 -- 1.8.3.1 -- 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