summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorGu Zheng <guz.fnst@cn.fujitsu.com>2013-06-20 17:52:39 +0800
committerChanho Park <chanho61.park@samsung.com>2014-03-20 17:34:41 +0900
commit417c0ff49cad15bb00e4a229801d41b4e756c314 (patch)
tree52c43db09559e74994a9eae20ae5e85ecb7bbd49 /fs
parent775fcdf884d56ddfbf9b343f9636d9e92759f1ae (diff)
downloadlinux-3.10-417c0ff49cad15bb00e4a229801d41b4e756c314.tar.gz
linux-3.10-417c0ff49cad15bb00e4a229801d41b4e756c314.tar.bz2
linux-3.10-417c0ff49cad15bb00e4a229801d41b4e756c314.zip
f2fs: code cleanup and simplify in func {find/add}_gc_inode
This patch simplifies list operations in find_gc_inode and add_gc_inode. Just simple code cleanup. Signed-off-by: Gu Zheng <guz.fnst@cn.fujitsu.com> [Jaegeuk Kim: add description] Signed-off-by: Jaegeuk Kim <jaegeuk.kim@samsung.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/f2fs/gc.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c
index 3a9df36491a..35f9b1a196a 100644
--- a/fs/f2fs/gc.c
+++ b/fs/f2fs/gc.c
@@ -321,28 +321,21 @@ static const struct victim_selection default_v_ops = {
static struct inode *find_gc_inode(nid_t ino, struct list_head *ilist)
{
- struct list_head *this;
struct inode_entry *ie;
- list_for_each(this, ilist) {
- ie = list_entry(this, struct inode_entry, list);
+ list_for_each_entry(ie, ilist, list)
if (ie->inode->i_ino == ino)
return ie->inode;
- }
return NULL;
}
static void add_gc_inode(struct inode *inode, struct list_head *ilist)
{
- struct list_head *this;
- struct inode_entry *new_ie, *ie;
+ struct inode_entry *new_ie;
- list_for_each(this, ilist) {
- ie = list_entry(this, struct inode_entry, list);
- if (ie->inode == inode) {
- iput(inode);
- return;
- }
+ if (inode == find_gc_inode(inode->i_ino, ilist)) {
+ iput(inode);
+ return;
}
repeat:
new_ie = kmem_cache_alloc(winode_slab, GFP_NOFS);