aboutsummaryrefslogtreecommitdiffstats
path: root/fs/f2fs/checkpoint.c
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk.kim@samsung.com>2013-04-25 16:05:51 +0900
committerJaegeuk Kim <jaegeuk.kim@samsung.com>2013-04-29 11:19:21 +0900
commit55008d845d233396ed374473da4613cee691aa03 (patch)
treef869d0a791bee739b31714a49b8d8e092de44bf6 /fs/f2fs/checkpoint.c
parentf2fs: add a tracepoint on f2fs_new_inode (diff)
downloadlinux-dev-55008d845d233396ed374473da4613cee691aa03.tar.xz
linux-dev-55008d845d233396ed374473da4613cee691aa03.zip
f2fs: enhance alloc_nid and build_free_nids flows
In order to avoid build_free_nid lock contention, let's change the order of function calls as follows. At first, check whether there is enough free nids. - If available, just get a free nid with spin_lock without any overhead. - Otherwise, conduct build_free_nids. : scan nat pages, journal nat entries, and nat cache entries. We should consider carefullly not to serve free nids intermediately made by build_free_nids. We can get stable free nids only after build_free_nids is done. Reviewed-by: Namjae Jeon <namjae.jeon@samsung.com> Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
Diffstat (limited to 'fs/f2fs/checkpoint.c')
0 files changed, 0 insertions, 0 deletions