]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: handle errors when doing slow caching
authorJosef Bacik <jbacik@fusionio.com>
Mon, 5 Aug 2013 15:15:21 +0000 (11:15 -0400)
committerChris Mason <chris.mason@fusionio.com>
Sun, 1 Sep 2013 12:04:47 +0000 (08:04 -0400)
commit2d739d2667417ab3a227b565f5a514721c6c4002
treefad46576765b99267f7906de13343886f8a5a361
parent75beca445afe94d93a51d0511256d3dbfbc8dd3e
Btrfs: handle errors when doing slow caching

Alex Lyakas reported a bug where wait_block_group_cache_progress() would wait
forever if a drive failed.  This is because we just bail out if there is an
error while trying to cache a block group, we don't update anybody who may be
waiting.  So this introduces a new enum for the cache state in case of error and
makes everybody bail out if we have an error.  Alex tested and verified this
patch fixed his problem.  This fixes bz 59431.  Thanks,

Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
fs/btrfs/ctree.h
fs/btrfs/extent-tree.c