diff --git a/fs/btrfs/extent_io.c b/fs/btrfs/extent_io.c index d1f4be014fa40e58d8232a2036d88bb8d5d12959..2ae526e4caeb00393d6de60e904f90d8919eac43 100644 --- a/fs/btrfs/extent_io.c +++ b/fs/btrfs/extent_io.c @@ -4321,6 +4321,8 @@ int try_release_extent_mapping(struct page *page, gfp_t mask) /* once for us */ free_extent_map(em); + + cond_resched(); /* Allow large-extent preemption. */ } } return try_release_extent_state(tree, page, mask);