Don't use blk plug covering area where there won't be any IOs being issued.

Signed-off-by: Chao Yu <yuch...@huawei.com>
---
 fs/f2fs/segment.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c
index c1a03b0857f9..57a81f9c8c14 100644
--- a/fs/f2fs/segment.c
+++ b/fs/f2fs/segment.c
@@ -848,9 +848,8 @@ static int issue_discard_thread(void *data)
        if (kthread_should_stop())
                return 0;
 
-       blk_start_plug(&plug);
-
        mutex_lock(&dcc->cmd_lock);
+       blk_start_plug(&plug);
        list_for_each_entry_safe(dc, tmp, pend_list, list) {
                f2fs_bug_on(sbi, dc->state != D_PREP);
 
@@ -860,6 +859,7 @@ static int issue_discard_thread(void *data)
                if (iter++ > DISCARD_ISSUE_RATE)
                        break;
        }
+       blk_finish_plug(&plug);
 
        list_for_each_entry_safe(dc, tmp, wait_list, list) {
                if (dc->state == D_DONE)
@@ -867,8 +867,6 @@ static int issue_discard_thread(void *data)
        }
        mutex_unlock(&dcc->cmd_lock);
 
-       blk_finish_plug(&plug);
-
        iter = 0;
        congestion_wait(BLK_RW_SYNC, HZ/50);
 
-- 
2.8.2.295.g3f1c1d0

Reply via email to