diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c index a8f4c8146714181dcfdc8ae4a96408fa2a340983..de6738b82745e5204259c2ec954807de0588d344 100644 --- a/fs/f2fs/segment.c +++ b/fs/f2fs/segment.c @@ -1337,7 +1337,8 @@ void clear_prefree_segments(struct f2fs_sb_info *sbi, struct cp_control *cpc) sbi->blocks_per_seg, cur_pos); len = next_pos - cur_pos; - if (force && len < cpc->trim_minlen) + if (f2fs_sb_mounted_blkzoned(sbi->sb) || + (force && len < cpc->trim_minlen)) goto skip; f2fs_issue_discard(sbi, entry->start_blkaddr + cur_pos,