It should be better to ensure memory allocation during rolling decompression to avoid io error.
Signed-off-by: Huang Jianan <huangjia...@oppo.com> Signed-off-by: Guo Weichao <guoweic...@oppo.com> --- fs/erofs/decompressor.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/erofs/decompressor.c b/fs/erofs/decompressor.c index 49347e681a53..fb0fa4e5b9ea 100644 --- a/fs/erofs/decompressor.c +++ b/fs/erofs/decompressor.c @@ -86,7 +86,7 @@ static int z_erofs_lz4_prepare_destpages(struct z_erofs_decompress_req *rq, victim = availables[--top]; get_page(victim); } else { - victim = erofs_allocpage(pagepool, GFP_KERNEL); + victim = erofs_allocpage(pagepool, GFP_KERNEL | __GFP_NOFAIL); if (!victim) return -ENOMEM; set_page_private(victim, Z_EROFS_SHORTLIVED_PAGE); -- 2.25.1