diff options
-rw-r--r-- | fs/f2fs/segment.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c index b4b90980dc7b..35009dbacd46 100644 --- a/fs/f2fs/segment.c +++ b/fs/f2fs/segment.c | |||
@@ -1204,6 +1204,8 @@ static int __issue_discard_cmd(struct f2fs_sb_info *sbi, | |||
1204 | pend_list = &dcc->pend_list[i]; | 1204 | pend_list = &dcc->pend_list[i]; |
1205 | 1205 | ||
1206 | mutex_lock(&dcc->cmd_lock); | 1206 | mutex_lock(&dcc->cmd_lock); |
1207 | if (list_empty(pend_list)) | ||
1208 | goto next; | ||
1207 | f2fs_bug_on(sbi, !__check_rb_tree_consistence(sbi, &dcc->root)); | 1209 | f2fs_bug_on(sbi, !__check_rb_tree_consistence(sbi, &dcc->root)); |
1208 | blk_start_plug(&plug); | 1210 | blk_start_plug(&plug); |
1209 | list_for_each_entry_safe(dc, tmp, pend_list, list) { | 1211 | list_for_each_entry_safe(dc, tmp, pend_list, list) { |
@@ -1222,6 +1224,7 @@ skip: | |||
1222 | break; | 1224 | break; |
1223 | } | 1225 | } |
1224 | blk_finish_plug(&plug); | 1226 | blk_finish_plug(&plug); |
1227 | next: | ||
1225 | mutex_unlock(&dcc->cmd_lock); | 1228 | mutex_unlock(&dcc->cmd_lock); |
1226 | 1229 | ||
1227 | if (iter >= dpolicy->max_requests) | 1230 | if (iter >= dpolicy->max_requests) |