diff options
Diffstat (limited to 'drivers/block/brd.c')
-rw-r--r-- | drivers/block/brd.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/block/brd.c b/drivers/block/brd.c index 17defbf4f332..c548a5a6c1a0 100644 --- a/drivers/block/brd.c +++ b/drivers/block/brd.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0-only /* * Ram backed block device driver. * @@ -153,6 +154,12 @@ static void brd_free_pages(struct brd_device *brd) pos++; /* + * It takes 3.4 seconds to remove 80GiB ramdisk. + * So, we need cond_resched to avoid stalling the CPU. + */ + cond_resched(); + + /* * This assumes radix_tree_gang_lookup always returns as * many pages as possible. If the radix-tree code changes, * so will this have to. |