Btrfs: process all async extents on compressed write failure
authorFilipe Manana <fdmanana@suse.com>
Mon, 6 Oct 2014 21:14:25 +0000 (22:14 +0100)
committerChris Mason <clm@fb.com>
Fri, 21 Nov 2014 01:14:26 +0000 (17:14 -0800)
commit6461666ddd8c5511a45d6d111730b6268ffdc834
treefc76571c64a9f7d7aaf4788c9fd426dcaa1f33e2
parentb7deb43c9dd467bc4a297fc7d6f4845da7b8acb2
Btrfs: process all async extents on compressed write failure

If we had an error when processing one of the async extents from our list,
we were not processing the remaining async extents, meaning we would leak
those async_extent structs, never release the pages with the compressed
data and never unlock and clear the dirty flag from the inode's pages (those
that correspond to the uncompressed content).

Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: Chris Mason <clm@fb.com>
fs/btrfs/inode.c