Btrfs: wait for ordered extents if we're in trouble when shrinking delalloc
authorJosef Bacik <josef@redhat.com>
Fri, 14 Oct 2011 17:56:58 +0000 (13:56 -0400)
committerJosef Bacik <josef@redhat.com>
Wed, 19 Oct 2011 19:12:57 +0000 (15:12 -0400)
commitf104d044376aadcee74605d66b8d9dc2e145782c
treeb993ee1cae8bd523455f1679f9db4d7e5a004f70
parentbbb495c2ed9d34894cb3d6d366866fc92a2e1adc
Btrfs: wait for ordered extents if we're in trouble when shrinking delalloc

The only way we actually reclaim delalloc space is waiting for the IO to
completely finish.  Usually we kick off a bunch of IO and wait for a little bit
and hope we can make our reservation, and usually this works out pretty well.
With overcommit however we can get seriously underwater if we're filling up the
disk quickly, so we need to be able to force the delalloc shrinker to wait for
the ordered IO to finish to give us a better chance of actually reclaiming
enough space to get our reservation.  Thanks,

Signed-off-by: Josef Bacik <josef@redhat.com>
fs/btrfs/extent-tree.c