From: Jaegeuk Kim Date: Thu, 25 Apr 2013 07:05:51 +0000 (+0900) Subject: f2fs: enhance alloc_nid and build_free_nids flows X-Git-Tag: v3.10-rc1~45^2~11 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=55008d845d233396ed374473da4613cee691aa03;p=pandora-kernel.git 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 Signed-off-by: Jaegeuk Kim --- Reading git-diff-tree failed