Lines Matching refs:entry
31 struct fsync_inode_entry *entry; in get_fsync_inode() local
34 entry = list_entry(this, struct fsync_inode_entry, list); in get_fsync_inode()
35 if (entry->inode->i_ino == ino) in get_fsync_inode()
36 return entry; in get_fsync_inode()
113 struct fsync_inode_entry *entry; in find_fsync_dnodes() local
127 entry = get_fsync_inode(head, ino_of_node(page)); in find_fsync_dnodes()
128 if (entry) { in find_fsync_dnodes()
129 entry->blkaddr = blkaddr; in find_fsync_dnodes()
131 set_inode_flag(F2FS_I(entry->inode), in find_fsync_dnodes()
141 entry = kmem_cache_alloc(fsync_entry_slab, GFP_NOFS); in find_fsync_dnodes()
142 if (!entry) { in find_fsync_dnodes()
147 entry->inode = f2fs_iget(sbi->sb, ino_of_node(page)); in find_fsync_dnodes()
148 if (IS_ERR(entry->inode)) { in find_fsync_dnodes()
149 err = PTR_ERR(entry->inode); in find_fsync_dnodes()
150 kmem_cache_free(fsync_entry_slab, entry); in find_fsync_dnodes()
154 list_add_tail(&entry->list, head); in find_fsync_dnodes()
155 entry->blkaddr = blkaddr; in find_fsync_dnodes()
158 err = recover_inode(entry->inode, page); in find_fsync_dnodes()
180 struct fsync_inode_entry *entry, *tmp; in destroy_fsync_dnodes() local
182 list_for_each_entry_safe(entry, tmp, head, list) { in destroy_fsync_dnodes()
183 iput(entry->inode); in destroy_fsync_dnodes()
184 list_del(&entry->list); in destroy_fsync_dnodes()
185 kmem_cache_free(fsync_entry_slab, entry); in destroy_fsync_dnodes()
334 struct fsync_inode_entry *entry; in recover_data() local
345 entry = get_fsync_inode(head, ino_of_node(page)); in recover_data()
346 if (!entry) in recover_data()
349 err = do_recover_data(sbi, entry->inode, page, blkaddr); in recover_data()
353 if (entry->blkaddr == blkaddr) { in recover_data()
354 iput(entry->inode); in recover_data()
355 list_del(&entry->list); in recover_data()
356 kmem_cache_free(fsync_entry_slab, entry); in recover_data()