• Chris Mason's avatar
    Btrfs: use the flusher threads for delalloc throttling · bf9022e0
    Chris Mason authored
    We have a fairly complex set of loops around walking our list of
    delalloc inodes when we find metadata delalloc space running low.
    It doesn't work very well, can use large amounts of CPU and doesn't
    do very efficient writeback.
    
    This switches us to kick the bdi flusher threads instead.  All dirty
    data in btrfs is accounted as delalloc data, so this is very similar
    in terms of what it writes, but we're able to just kick off the IO
    and wait for progress.
    Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
    bf9022e0
extent-tree.c 224 KB