Loading fs/f2fs/segment.c +9 −7 Original line number Diff line number Diff line Loading @@ -1167,21 +1167,23 @@ static int create_discard_cmd_control(struct f2fs_sb_info *sbi) return err; } static void destroy_discard_cmd_control(struct f2fs_sb_info *sbi, bool free) static void destroy_discard_cmd_control(struct f2fs_sb_info *sbi) { struct discard_cmd_control *dcc = SM_I(sbi)->dcc_info; if (dcc && dcc->f2fs_issue_discard) { if (!dcc) return; if (dcc->f2fs_issue_discard) { struct task_struct *discard_thread = dcc->f2fs_issue_discard; dcc->f2fs_issue_discard = NULL; kthread_stop(discard_thread); } if (free) { kfree(dcc); SM_I(sbi)->dcc_info = NULL; } } static bool __mark_sit_entry_dirty(struct f2fs_sb_info *sbi, unsigned int segno) { Loading Loading @@ -3073,7 +3075,7 @@ void destroy_segment_manager(struct f2fs_sb_info *sbi) if (!sm_info) return; destroy_flush_cmd_control(sbi, true); destroy_discard_cmd_control(sbi, true); destroy_discard_cmd_control(sbi); destroy_dirty_segmap(sbi); destroy_curseg(sbi); destroy_free_segmap(sbi); Loading Loading
fs/f2fs/segment.c +9 −7 Original line number Diff line number Diff line Loading @@ -1167,21 +1167,23 @@ static int create_discard_cmd_control(struct f2fs_sb_info *sbi) return err; } static void destroy_discard_cmd_control(struct f2fs_sb_info *sbi, bool free) static void destroy_discard_cmd_control(struct f2fs_sb_info *sbi) { struct discard_cmd_control *dcc = SM_I(sbi)->dcc_info; if (dcc && dcc->f2fs_issue_discard) { if (!dcc) return; if (dcc->f2fs_issue_discard) { struct task_struct *discard_thread = dcc->f2fs_issue_discard; dcc->f2fs_issue_discard = NULL; kthread_stop(discard_thread); } if (free) { kfree(dcc); SM_I(sbi)->dcc_info = NULL; } } static bool __mark_sit_entry_dirty(struct f2fs_sb_info *sbi, unsigned int segno) { Loading Loading @@ -3073,7 +3075,7 @@ void destroy_segment_manager(struct f2fs_sb_info *sbi) if (!sm_info) return; destroy_flush_cmd_control(sbi, true); destroy_discard_cmd_control(sbi, true); destroy_discard_cmd_control(sbi); destroy_dirty_segmap(sbi); destroy_curseg(sbi); destroy_free_segmap(sbi); Loading