segment.c (81eb8d6e2869b119d4a7b8c02091c3779733a3ac) | segment.c (4660f9c0fe484353b17a4b9d1cc2b036fa895f76) |
---|---|
1/* 2 * fs/f2fs/segment.c 3 * 4 * Copyright (c) 2012 Samsung Electronics Co., Ltd. 5 * http://www.samsung.com/ 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License version 2 as --- 22 unchanged lines hidden (view full) --- 31 * dir/node pages without enough free segments. 32 */ 33 if (has_not_enough_free_secs(sbi, 0)) { 34 mutex_lock(&sbi->gc_mutex); 35 f2fs_gc(sbi); 36 } 37} 38 | 1/* 2 * fs/f2fs/segment.c 3 * 4 * Copyright (c) 2012 Samsung Electronics Co., Ltd. 5 * http://www.samsung.com/ 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License version 2 as --- 22 unchanged lines hidden (view full) --- 31 * dir/node pages without enough free segments. 32 */ 33 if (has_not_enough_free_secs(sbi, 0)) { 34 mutex_lock(&sbi->gc_mutex); 35 f2fs_gc(sbi); 36 } 37} 38 |
39void f2fs_balance_fs_bg(struct f2fs_sb_info *sbi) 40{ 41 /* check the # of cached NAT entries and prefree segments */ 42 if (try_to_free_nats(sbi, NAT_ENTRY_PER_BLOCK) || 43 excess_prefree_segs(sbi)) 44 f2fs_sync_fs(sbi->sb, true); 45} 46 |
|
39static void __locate_dirty_segment(struct f2fs_sb_info *sbi, unsigned int segno, 40 enum dirty_type dirty_type) 41{ 42 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); 43 44 /* need not be added */ 45 if (IS_CURSEG(sbi, segno)) 46 return; --- 1716 unchanged lines hidden --- | 47static void __locate_dirty_segment(struct f2fs_sb_info *sbi, unsigned int segno, 48 enum dirty_type dirty_type) 49{ 50 struct dirty_seglist_info *dirty_i = DIRTY_I(sbi); 51 52 /* need not be added */ 53 if (IS_CURSEG(sbi, segno)) 54 return; --- 1716 unchanged lines hidden --- |