diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c index fe0329050490..427703622c17 100644 --- a/fs/f2fs/segment.c +++ b/fs/f2fs/segment.c @@ -3248,7 +3248,8 @@ static int __get_segment_type_6(struct f2fs_io_info *fio) if (page_private_gcing(fio->page)) { if (fio->sbi->am.atgc_enabled && (fio->io_type == FS_DATA_IO) && - (fio->sbi->gc_mode != GC_URGENT_HIGH)) + (fio->sbi->gc_mode != GC_URGENT_HIGH) && + !is_inode_flag_set(inode, FI_OPU_WRITE)) return CURSEG_ALL_DATA_ATGC; else return CURSEG_COLD_DATA;