On Mon, Dec 03, 2018 at 10:24:58AM -0500, Josef Bacik wrote: > For FLUSH_LIMIT flushers (think evict, truncate) we can deadlock when > running delalloc because we may be holding a tree lock. We can also > deadlock with delayed refs rsv's that are running via the committing > mechanism. The only safe operations for FLUSH_LIMIT is to run the > delayed operations and to allocate chunks, everything else has the > potential to deadlock. Future proof this by explicitly specifying the > states that FLUSH_LIMIT is allowed to use. This will keep us from > introducing bugs later on when adding new flush states. > > Signed-off-by: Josef Bacik <jo...@toxicpanda.com>
Reviewed-by: David Sterba <dste...@suse.com>