Btrfs: fix double free in find_lock_delalloc_range

commit 7d78874273 upstream.

We need to NULL the cached_state after freeing it, otherwise
we might free it again if find_delalloc_range doesn't find anything.

Signed-off-by: Chris Mason <clm@fb.com>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
This commit is contained in:
Chris Mason
2014-05-21 05:49:54 -07:00
committed by Kamal Mostafa
parent 8378e77089
commit 113b135ebf

View File

@@ -1595,6 +1595,7 @@ again:
* shortening the size of the delalloc range we're searching
*/
free_extent_state(cached_state);
cached_state = NULL;
if (!loops) {
unsigned long offset = (*start) & (PAGE_CACHE_SIZE - 1);
max_bytes = PAGE_CACHE_SIZE - offset;