f2fs: clean up with list_{first, last}_entry
authorChao Yu <yuchao0@huawei.com>
Sat, 7 Jan 2017 10:49:42 +0000 (18:49 +0800)
committerJaegeuk Kim <jaegeuk@kernel.org>
Thu, 23 Feb 2017 02:48:47 +0000 (18:48 -0800)
Signed-off-by: Chao Yu <yuchao0@huawei.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
fs/f2fs/checkpoint.c
fs/f2fs/data.c
fs/f2fs/node.h

index ccea40763d9d8ffd4c70f4721783c0f99d989342..fb8cdfcaece6b1607b23f57a1ee49c0f93337a61 100644 (file)
@@ -891,7 +891,7 @@ retry:
                                F2FS_DIRTY_DENTS : F2FS_DIRTY_DATA));
                return 0;
        }
-       fi = list_entry(head->next, struct f2fs_inode_info, dirty_list);
+       fi = list_first_entry(head, struct f2fs_inode_info, dirty_list);
        inode = igrab(&fi->vfs_inode);
        spin_unlock(&sbi->inode_lock[type]);
        if (inode) {
@@ -924,7 +924,7 @@ int f2fs_sync_inode_meta(struct f2fs_sb_info *sbi)
                        spin_unlock(&sbi->inode_lock[DIRTY_META]);
                        return 0;
                }
-               fi = list_entry(head->next, struct f2fs_inode_info,
+               fi = list_first_entry(head, struct f2fs_inode_info,
                                                        gdirty_list);
                inode = igrab(&fi->vfs_inode);
                spin_unlock(&sbi->inode_lock[DIRTY_META]);
index 12d235f2c7714b8e390d6b89a6cc830ee6ed1d63..ab2008dea9219361aefbc3fe12b5447955bac0ff 100644 (file)
@@ -1143,7 +1143,7 @@ static int f2fs_mpage_readpages(struct address_space *mapping,
 
                prefetchw(&page->flags);
                if (pages) {
-                       page = list_entry(pages->prev, struct page, lru);
+                       page = list_last_entry(pages, struct page, lru);
                        list_del(&page->lru);
                        if (add_to_page_cache_lru(page, mapping,
                                                  page->index,
@@ -1262,7 +1262,7 @@ static int f2fs_read_data_pages(struct file *file,
                        struct list_head *pages, unsigned nr_pages)
 {
        struct inode *inode = file->f_mapping->host;
-       struct page *page = list_entry(pages->prev, struct page, lru);
+       struct page *page = list_last_entry(pages, struct page, lru);
 
        trace_f2fs_readpages(inode, page, nr_pages);
 
index e7997e2403660799de6ed30605f5b090e938fd5f..9278b21ee07381f5972d7b9a65814db25c7c8067 100644 (file)
@@ -174,7 +174,7 @@ static inline void next_free_nid(struct f2fs_sb_info *sbi, nid_t *nid)
                spin_unlock(&nm_i->nid_list_lock);
                return;
        }
-       fnid = list_entry(nm_i->nid_list[FREE_NID_LIST].next,
+       fnid = list_first_entry(&nm_i->nid_list[FREE_NID_LIST],
                                                struct free_nid, list);
        *nid = fnid->nid;
        spin_unlock(&nm_i->nid_list_lock);