On Sat, Nov 08, 2014 at 11:36:05PM -0800, Jaegeuk Kim wrote: > The roll-forward mechanism should be activated when the number of active > logs is not 2. > > Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx> > --- > fs/f2fs/file.c | 2 ++ > fs/f2fs/segment.c | 4 ++-- > 2 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c > index 46311e7..54722a0 100644 > --- a/fs/f2fs/file.c > +++ b/fs/f2fs/file.c > @@ -132,6 +132,8 @@ static inline bool need_do_checkpoint(struct inode *inode) > need_cp = true; > else if (test_opt(sbi, FASTBOOT)) > need_cp = true; > + else if (sbi->active_logs == 2) > + need_cp = true; > > return need_cp; > } > diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c > index 2fb3d7f..16721b5d 100644 > --- a/fs/f2fs/segment.c > +++ b/fs/f2fs/segment.c > @@ -1090,8 +1090,8 @@ static int __get_segment_type_4(struct page *page, enum page_type p_type) > else > return CURSEG_COLD_DATA; > } else { > - if (IS_DNODE(page) && !is_cold_node(page)) > - return CURSEG_HOT_NODE; > + if (IS_DNODE(page) && is_cold_node(page)) > + return CURSEG_WARM_NODE; Hi Jaegeuk, We should take hot/cold seperation into account as well. In case of dir inode, it will be mixed with COLD_NODE. If it's trade-off, let's notice it kindly as comments. Regards, Changman > else > return CURSEG_COLD_NODE; > } > -- > 2.1.1 > > > ------------------------------------------------------------------------------ > _______________________________________________ > Linux-f2fs-devel mailing list > Linux-f2fs-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html