aboutsummaryrefslogtreecommitdiff
path: root/samples
diff options
context:
space:
mode:
authorChao Yu <chao2.yu@samsung.com>2016-01-18 18:31:18 +0800
committerMister Oyster <oysterized@gmail.com>2017-04-13 12:32:50 +0200
commit66f0cee35954ba3fa83ea50353dd5adb12e8e349 (patch)
tree566f4bd3c698510448837ab62eefce108fb31c79 /samples
parentbc111b63bb4935b6f38b8e98ae11f8b80306e386 (diff)
f2fs: flush dirty nat entries when exceeding threshold
When testing f2fs with xfstest, generic/251 is stuck for long time, the case uses below serials to obtain fresh released space in device, in order to prepare for following fstrim test. 1. rm -rf /mnt/dir 2. mkdir /mnt/dir/ 3. cp -axT `pwd`/ /mnt/dir/ 4. goto 1 During preparing step, all nat entries will be cached in nat cache, most of them are dirty entries with invalid blkaddr, which means nodes related to these entries have been truncated, and they could be reused after the dirty entries been checkpointed. However, there was no checkpoint been triggered, so nid allocators (e.g. mkdir, creat) will run into long journey of iterating all NAT pages, looking for free nids in alloc_nid->build_free_nids. Here, in f2fs_balance_fs_bg we give another chance to do checkpoint to flush nat entries for reusing them in free nid cache when dirty entry count exceeds 10% of max count. Signed-off-by: Chao Yu <chao2.yu@samsung.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'samples')
0 files changed, 0 insertions, 0 deletions