mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-28 12:25:31 +00:00
f2fs: call sync_fs when f2fs is idle
The sync_fs in f2fs_balance_fs_bg must avoid interrupting current user requests. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
204706c7ac
commit
f455c8a5f0
@ -383,12 +383,15 @@ void f2fs_balance_fs_bg(struct f2fs_sb_info *sbi)
|
|||||||
else
|
else
|
||||||
build_free_nids(sbi, false);
|
build_free_nids(sbi, false);
|
||||||
|
|
||||||
|
if (!is_idle(sbi))
|
||||||
|
return;
|
||||||
|
|
||||||
/* checkpoint is the only way to shrink partial cached entries */
|
/* checkpoint is the only way to shrink partial cached entries */
|
||||||
if (!available_free_memory(sbi, NAT_ENTRIES) ||
|
if (!available_free_memory(sbi, NAT_ENTRIES) ||
|
||||||
!available_free_memory(sbi, INO_ENTRIES) ||
|
!available_free_memory(sbi, INO_ENTRIES) ||
|
||||||
excess_prefree_segs(sbi) ||
|
excess_prefree_segs(sbi) ||
|
||||||
excess_dirty_nats(sbi) ||
|
excess_dirty_nats(sbi) ||
|
||||||
(is_idle(sbi) && f2fs_time_over(sbi, CP_TIME))) {
|
f2fs_time_over(sbi, CP_TIME)) {
|
||||||
if (test_opt(sbi, DATA_FLUSH)) {
|
if (test_opt(sbi, DATA_FLUSH)) {
|
||||||
struct blk_plug plug;
|
struct blk_plug plug;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user