diff options
author | Jaegeuk Kim <jaegeuk@kernel.org> | 2019-01-25 21:26:39 +0300 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2019-02-16 07:59:45 +0300 |
commit | b460866d27089ffaf915a5a3340b4d8c9f079d33 (patch) | |
tree | 10bfaa2f360c3657a1b5a8edfb0ee08055cc52f3 /fs | |
parent | b86232536c3ec068b0960ffc62c61a872412b2b7 (diff) | |
download | linux-b460866d27089ffaf915a5a3340b4d8c9f079d33.tar.xz |
f2fs: don't wake up too frequently, if there is lots of IOs
Otherwise, it wakes up discard thread which will sleep again by busy IOs
in a loop.
Reviewed-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/f2fs/segment.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/f2fs/segment.h b/fs/f2fs/segment.h index a77f76f528b6..5c7ed0442d6e 100644 --- a/fs/f2fs/segment.h +++ b/fs/f2fs/segment.h @@ -865,7 +865,7 @@ static inline void wake_up_discard_thread(struct f2fs_sb_info *sbi, bool force) } } mutex_unlock(&dcc->cmd_lock); - if (!wakeup) + if (!wakeup || !is_idle(sbi, DISCARD_TIME)) return; wake_up: dcc->discard_wake = 1; |