diff options
author | Changman Lee <cm224.lee@samsung.com> | 2014-11-28 10:49:40 -0500 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2014-12-02 14:02:50 -0500 |
commit | 7dda2af83b2b7593458828d4f15443167b3da8c4 (patch) | |
tree | 0ecb8d2e1a2ef4a0745bd704ff09d86ed3cccb3f /fs/f2fs/gc.h | |
parent | 9c01503f4da3ff9c327d37249fe148ed7c188b20 (diff) |
f2fs: more fast lookup for gc_inode list
If there are many inodes that have data blocks in victim segment,
it takes long time to find a inode in gc_inode list.
Let's use radix_tree to reduce lookup time.
Signed-off-by: Changman Lee <cm224.lee@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/gc.h')
-rw-r--r-- | fs/f2fs/gc.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/f2fs/gc.h b/fs/f2fs/gc.h index 16f0b2b22999..6ff7ad38463e 100644 --- a/fs/f2fs/gc.h +++ b/fs/f2fs/gc.h | |||
@@ -40,6 +40,11 @@ struct inode_entry { | |||
40 | struct inode *inode; | 40 | struct inode *inode; |
41 | }; | 41 | }; |
42 | 42 | ||
43 | struct gc_inode_list { | ||
44 | struct list_head ilist; | ||
45 | struct radix_tree_root iroot; | ||
46 | }; | ||
47 | |||
43 | /* | 48 | /* |
44 | * inline functions | 49 | * inline functions |
45 | */ | 50 | */ |