diff options
author | Chao Yu <chao2.yu@samsung.com> | 2014-12-29 10:56:18 +0300 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2015-01-10 04:02:26 +0300 |
commit | 062920734c0de9dd4f0a9bdc36fdcabc2751eb34 (patch) | |
tree | 98d5a6d3813a539205b40209d5e9a34a22e0d2aa /fs/f2fs/gc.h | |
parent | 2ace38e00e54f5c722d8c5eba36d1172548a3466 (diff) | |
download | linux-062920734c0de9dd4f0a9bdc36fdcabc2751eb34.tar.xz |
f2fs: reuse inode_entry_slab in gc procedure for using slab more effectively
There are two slab cache inode_entry_slab and winode_slab using the same
structure as below:
struct dir_inode_entry {
struct list_head list; /* list head */
struct inode *inode; /* vfs inode pointer */
};
struct inode_entry {
struct list_head list;
struct inode *inode;
};
It's a little waste that the two cache can not share their memory space for each
other.
So in this patch we remove one redundant winode_slab slab cache, then use more
universal name struct inode_entry as remaining data structure name of slab,
finally we reuse the inode_entry_slab to store dirty dir item and gc item for
more effective.
Signed-off-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Diffstat (limited to 'fs/f2fs/gc.h')
-rw-r--r-- | fs/f2fs/gc.h | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/fs/f2fs/gc.h b/fs/f2fs/gc.h index 6ff7ad38463e..524543a6a34a 100644 --- a/fs/f2fs/gc.h +++ b/fs/f2fs/gc.h @@ -35,16 +35,13 @@ struct f2fs_gc_kthread { unsigned int gc_idle; }; -struct inode_entry { - struct list_head list; - struct inode *inode; -}; - struct gc_inode_list { struct list_head ilist; struct radix_tree_root iroot; }; +extern struct kmem_cache *inode_entry_slab; + /* * inline functions */ |