Lines Matching refs:jinode
181 int jbd2_submit_inode_data(journal_t *journal, struct jbd2_inode *jinode)
183 if (!jinode || !(jinode->i_flags & JI_WRITE_DATA))
186 trace_jbd2_submit_inode_data(jinode->i_vfs_inode);
187 return journal->j_submit_inode_data_buffers(jinode);
192 int jbd2_wait_inode_data(journal_t *journal, struct jbd2_inode *jinode)
194 if (!jinode || !(jinode->i_flags & JI_WAIT_DATA) ||
195 !jinode->i_vfs_inode || !jinode->i_vfs_inode->i_mapping)
198 jinode->i_vfs_inode->i_mapping, jinode->i_dirty_start,
199 jinode->i_dirty_end);
214 struct jbd2_inode *jinode;
218 list_for_each_entry(jinode, &commit_transaction->t_inode_list, i_list) {
219 if (!(jinode->i_flags & JI_WRITE_DATA))
221 jinode->i_flags |= JI_COMMIT_RUNNING;
224 trace_jbd2_submit_inode_data(jinode->i_vfs_inode);
226 err = journal->j_submit_inode_data_buffers(jinode);
231 J_ASSERT(jinode->i_transaction == commit_transaction);
232 jinode->i_flags &= ~JI_COMMIT_RUNNING;
234 wake_up_bit(&jinode->i_flags, __JI_COMMIT_RUNNING);
240 int jbd2_journal_finish_inode_data_buffers(struct jbd2_inode *jinode)
242 struct address_space *mapping = jinode->i_vfs_inode->i_mapping;
245 jinode->i_dirty_start,
246 jinode->i_dirty_end);
257 struct jbd2_inode *jinode, *next_i;
262 list_for_each_entry(jinode, &commit_transaction->t_inode_list, i_list) {
263 if (!(jinode->i_flags & JI_WAIT_DATA))
265 jinode->i_flags |= JI_COMMIT_RUNNING;
269 err = journal->j_finish_inode_data_buffers(jinode);
275 jinode->i_flags &= ~JI_COMMIT_RUNNING;
277 wake_up_bit(&jinode->i_flags, __JI_COMMIT_RUNNING);
281 list_for_each_entry_safe(jinode, next_i,
283 list_del(&jinode->i_list);
284 if (jinode->i_next_transaction) {
285 jinode->i_transaction = jinode->i_next_transaction;
286 jinode->i_next_transaction = NULL;
287 list_add(&jinode->i_list,
288 &jinode->i_transaction->t_inode_list);
290 jinode->i_transaction = NULL;
291 jinode->i_dirty_start = 0;
292 jinode->i_dirty_end = 0;