summaryrefslogtreecommitdiffstats
path: root/fs/f2fs/node.c
diff options
context:
space:
mode:
authorJaegeuk Kim2015-12-22 04:20:15 +0100
committerJaegeuk Kim2015-12-22 19:31:41 +0100
commit7441ccef339f87abc27afc4ccfc24c014d7360c9 (patch)
tree6f1abef9d8a0841a14f12d78d577dd988304513f /fs/f2fs/node.c
parentf2fs: add a tracepoint for sync_dirty_inodes (diff)
downloadkernel-qcow2-linux-7441ccef339f87abc27afc4ccfc24c014d7360c9.tar.gz
kernel-qcow2-linux-7441ccef339f87abc27afc4ccfc24c014d7360c9.tar.xz
kernel-qcow2-linux-7441ccef339f87abc27afc4ccfc24c014d7360c9.zip
f2fs: use atomic variable for total_extent_tree
It would be better to use atomic variable for total_extent_tree. Reviewed-by: Chao Yu <chao2.yu@samsung.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/node.c')
-rw-r--r--fs/f2fs/node.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
index d842b199cd02..6cc8ac7e185a 100644
--- a/fs/f2fs/node.c
+++ b/fs/f2fs/node.c
@@ -65,7 +65,8 @@ bool available_free_memory(struct f2fs_sb_info *sbi, int type)
sizeof(struct ino_entry)) >> PAGE_CACHE_SHIFT;
res = mem_size < ((avail_ram * nm_i->ram_thresh / 100) >> 1);
} else if (type == EXTENT_CACHE) {
- mem_size = (sbi->total_ext_tree * sizeof(struct extent_tree) +
+ mem_size = (atomic_read(&sbi->total_ext_tree) *
+ sizeof(struct extent_tree) +
atomic_read(&sbi->total_ext_node) *
sizeof(struct extent_node)) >> PAGE_CACHE_SHIFT;
res = mem_size < ((avail_ram * nm_i->ram_thresh / 100) >> 1);