From: Chao Yu Date: Tue, 26 May 2020 01:55:02 +0000 (+0800) Subject: f2fs: compress: don't compress any datas after cp stop X-Git-Tag: rel_imx_5.10.35_2.0.0-somdevices.0~1966^2~8 X-Git-Url: https://git.somdevices.com/?a=commitdiff_plain;h=dc35d73a42291b2a68f5b9a12b2b095b82194c1f;p=linux.git f2fs: compress: don't compress any datas after cp stop While compressed data writeback, we need to drop dirty pages like we did for non-compressed pages if cp stops, however it's not needed to compress any data in such case, so let's detect cp stop condition in cluster_may_compress() to avoid redundant compressing and let following f2fs_write_raw_pages() drops dirty pages correctly. Signed-off-by: Chao Yu Signed-off-by: Jaegeuk Kim --- diff --git a/fs/f2fs/compress.c b/fs/f2fs/compress.c index bf152c0d79fe..a53578a89211 100644 --- a/fs/f2fs/compress.c +++ b/fs/f2fs/compress.c @@ -849,6 +849,8 @@ static bool cluster_may_compress(struct compress_ctx *cc) return false; if (!f2fs_cluster_is_full(cc)) return false; + if (unlikely(f2fs_cp_error(F2FS_I_SB(cc->inode)))) + return false; return __cluster_may_compress(cc); }