diff options
author | Haicheng Li <haicheng.li@linux.intel.com> | 2013-05-06 23:15:41 +0800 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk.kim@samsung.com> | 2013-05-08 19:54:20 +0900 |
commit | 95630cbadc3588abff24a4b1989b72c943b27512 (patch) | |
tree | 9655200dfab3fb8efa94dfb84c1ff7fb9b451e64 /fs/direct-io.c | |
parent | 047184b42b52376f4066f9ab357c0a61a12f116e (diff) | |
download | lwn-95630cbadc3588abff24a4b1989b72c943b27512.tar.gz lwn-95630cbadc3588abff24a4b1989b72c943b27512.zip |
f2fs: bugfix for alloc_nid_failed()
Directly drop the free_nid cache when nm_i->fcnt > 2 * MAX_FREE_NIDS
Since there is NOT nmi->free_nid_list_lock spinlock protection between
a sequential calling of alloc_nid() and alloc_nid_failed(), some other
threads may already add new free_nid to the free_nid_list during this
period.
We need to make sure nmi->fcnt is never > 2 * MAX_FREE_NIDS.
Signed-off-by: Haicheng Li <haicheng.li@linux.intel.com>
[Jaegeuk Kim: fit the coding style]
Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
Diffstat (limited to 'fs/direct-io.c')
0 files changed, 0 insertions, 0 deletions