f2fs: introduce struct inode_management to wrap inner fields
authorChao Yu <chao2.yu@samsung.com>
Tue, 18 Nov 2014 03:18:36 +0000 (11:18 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 20 Nov 2014 06:49:32 +0000 (22:49 -0800)
commit67298804f34452a53a9ec9e609d95aa35084132b
tree46694b90d70b91debce0bffd6d9bd25e56586ac1
parentaba291b3d8d83941c7ea39487e279ae793b711b3
f2fs: introduce struct inode_management to wrap inner fields

Now in f2fs, we have three inode cache: ORPHAN_INO, APPEND_INO, UPDATE_INO,
and we manage fields related to inode cache separately in struct f2fs_sb_info
for each inode cache type.
This makes codes a bit messy, so that this patch intorduce a new struct
inode_management to wrap inner fields as following which make codes more neat.

/* for inner inode cache management */
struct inode_management {
struct radix_tree_root ino_root; /* ino entry array */
spinlock_t ino_lock; /* for ino entry lock */
struct list_head ino_list; /* inode list head */
unsigned long ino_num; /* number of entries */
};

struct f2fs_sb_info {
...
struct inode_management im[MAX_INO_ENTRY];      /* manage inode cache */
...
}

Signed-off-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/checkpoint.c
fs/f2fs/debug.c
fs/f2fs/f2fs.h
fs/f2fs/node.c