• Josef Bacik's avatar
    Btrfs: wait on async pages when shrinking delalloc · dea31f52
    Josef Bacik authored
    Mitch reported a problem where you could get an ENOSPC error when untarring
    a kernel git tree onto a 16gb file system with compress-force=zlib.  This is
    because compression is a huge pain, it will return from ->writepages()
    without having actually created any ordered extents.  To get around this we
    check to see if the async submit counter is up, and if it is wait until it
    drops to 0 before doing our normal ordered wait dance.  With this patch I
    can now untar a kernel git tree onto a 16gb file system without getting
    ENOSPC errors.  Thanks,
    Signed-off-by: default avatarJosef Bacik <jbacik@fusionio.com>
    dea31f52
extent-tree.c 216 KB