Lines Matching refs:commit_transaction

117 					transaction_t *commit_transaction,  in journal_submit_commit_record()  argument
131 bh = jbd2_journal_get_descriptor_buffer(commit_transaction, in journal_submit_commit_record()
214 transaction_t *commit_transaction) in journal_submit_data_buffers() argument
221 list_for_each_entry(jinode, &commit_transaction->t_inode_list, i_list) { in journal_submit_data_buffers()
242 J_ASSERT(jinode->i_transaction == commit_transaction); in journal_submit_data_buffers()
257 transaction_t *commit_transaction) in journal_finish_inode_data_buffers() argument
264 list_for_each_entry(jinode, &commit_transaction->t_inode_list, i_list) { in journal_finish_inode_data_buffers()
285 &commit_transaction->t_inode_list, i_list) { in journal_finish_inode_data_buffers()
358 transaction_t *commit_transaction; in jbd2_journal_commit_transaction() local
416 commit_transaction = journal->j_running_transaction; in jbd2_journal_commit_transaction()
418 trace_jbd2_start_commit(journal, commit_transaction); in jbd2_journal_commit_transaction()
420 commit_transaction->t_tid); in jbd2_journal_commit_transaction()
423 J_ASSERT(commit_transaction->t_state == T_RUNNING); in jbd2_journal_commit_transaction()
424 commit_transaction->t_state = T_LOCKED; in jbd2_journal_commit_transaction()
426 trace_jbd2_commit_locking(journal, commit_transaction); in jbd2_journal_commit_transaction()
427 stats.run.rs_wait = commit_transaction->t_max_wait; in jbd2_journal_commit_transaction()
430 if (commit_transaction->t_requested) in jbd2_journal_commit_transaction()
432 jbd2_time_diff(commit_transaction->t_requested, in jbd2_journal_commit_transaction()
434 stats.run.rs_running = jbd2_time_diff(commit_transaction->t_start, in jbd2_journal_commit_transaction()
437 spin_lock(&commit_transaction->t_handle_lock); in jbd2_journal_commit_transaction()
438 while (atomic_read(&commit_transaction->t_updates)) { in jbd2_journal_commit_transaction()
443 if (atomic_read(&commit_transaction->t_updates)) { in jbd2_journal_commit_transaction()
444 spin_unlock(&commit_transaction->t_handle_lock); in jbd2_journal_commit_transaction()
448 spin_lock(&commit_transaction->t_handle_lock); in jbd2_journal_commit_transaction()
452 spin_unlock(&commit_transaction->t_handle_lock); in jbd2_journal_commit_transaction()
453 commit_transaction->t_state = T_SWITCH; in jbd2_journal_commit_transaction()
456 J_ASSERT (atomic_read(&commit_transaction->t_outstanding_credits) <= in jbd2_journal_commit_transaction()
475 while (commit_transaction->t_reserved_list) { in jbd2_journal_commit_transaction()
476 jh = commit_transaction->t_reserved_list; in jbd2_journal_commit_transaction()
519 &commit_transaction->t_outstanding_credits); in jbd2_journal_commit_transaction()
522 trace_jbd2_commit_flushing(journal, commit_transaction); in jbd2_journal_commit_transaction()
527 commit_transaction->t_state = T_FLUSH; in jbd2_journal_commit_transaction()
528 journal->j_committing_transaction = commit_transaction; in jbd2_journal_commit_transaction()
531 commit_transaction->t_log_start = journal->j_head; in jbd2_journal_commit_transaction()
541 err = journal_submit_data_buffers(journal, commit_transaction); in jbd2_journal_commit_transaction()
546 jbd2_journal_write_revoke_records(commit_transaction, &log_bufs); in jbd2_journal_commit_transaction()
556 commit_transaction->t_state = T_COMMIT; in jbd2_journal_commit_transaction()
559 trace_jbd2_commit_logging(journal, commit_transaction); in jbd2_journal_commit_transaction()
564 atomic_read(&commit_transaction->t_outstanding_credits); in jbd2_journal_commit_transaction()
567 J_ASSERT(commit_transaction->t_nr_buffers <= in jbd2_journal_commit_transaction()
568 atomic_read(&commit_transaction->t_outstanding_credits)); in jbd2_journal_commit_transaction()
573 while (commit_transaction->t_buffers) { in jbd2_journal_commit_transaction()
577 jh = commit_transaction->t_buffers; in jbd2_journal_commit_transaction()
594 if (!commit_transaction->t_buffers) in jbd2_journal_commit_transaction()
608 commit_transaction, in jbd2_journal_commit_transaction()
648 atomic_dec(&commit_transaction->t_outstanding_credits); in jbd2_journal_commit_transaction()
661 flags = jbd2_journal_write_metadata_buffer(commit_transaction, in jbd2_journal_commit_transaction()
682 commit_transaction->t_tid); in jbd2_journal_commit_transaction()
698 commit_transaction->t_buffers == NULL || in jbd2_journal_commit_transaction()
739 err = journal_finish_inode_data_buffers(journal, commit_transaction); in jbd2_journal_commit_transaction()
769 J_ASSERT(commit_transaction->t_state == T_COMMIT); in jbd2_journal_commit_transaction()
770 commit_transaction->t_state = T_COMMIT_DFLUSH; in jbd2_journal_commit_transaction()
778 if (commit_transaction->t_need_data_flush && in jbd2_journal_commit_transaction()
785 err = journal_submit_commit_record(journal, commit_transaction, in jbd2_journal_commit_transaction()
828 jh = commit_transaction->t_shadow_list->b_tprev; in jbd2_journal_commit_transaction()
839 jbd2_journal_file_buffer(jh, commit_transaction, BJ_Forget); in jbd2_journal_commit_transaction()
844 J_ASSERT (commit_transaction->t_shadow_list == NULL); in jbd2_journal_commit_transaction()
871 J_ASSERT(commit_transaction->t_state == T_COMMIT_DFLUSH); in jbd2_journal_commit_transaction()
872 commit_transaction->t_state = T_COMMIT_JFLUSH; in jbd2_journal_commit_transaction()
876 err = journal_submit_commit_record(journal, commit_transaction, in jbd2_journal_commit_transaction()
906 J_ASSERT(list_empty(&commit_transaction->t_inode_list)); in jbd2_journal_commit_transaction()
907 J_ASSERT(commit_transaction->t_buffers == NULL); in jbd2_journal_commit_transaction()
908 J_ASSERT(commit_transaction->t_checkpoint_list == NULL); in jbd2_journal_commit_transaction()
909 J_ASSERT(commit_transaction->t_shadow_list == NULL); in jbd2_journal_commit_transaction()
917 while (commit_transaction->t_forget) { in jbd2_journal_commit_transaction()
922 jh = commit_transaction->t_forget; in jbd2_journal_commit_transaction()
931 J_ASSERT_JH(jh, jh->b_transaction == commit_transaction); in jbd2_journal_commit_transaction()
1007 __jbd2_journal_insert_checkpoint(jh, commit_transaction); in jbd2_journal_commit_transaction()
1046 if (commit_transaction->t_forget) { in jbd2_journal_commit_transaction()
1056 journal->j_checkpoint_transactions = commit_transaction; in jbd2_journal_commit_transaction()
1057 commit_transaction->t_cpnext = commit_transaction; in jbd2_journal_commit_transaction()
1058 commit_transaction->t_cpprev = commit_transaction; in jbd2_journal_commit_transaction()
1060 commit_transaction->t_cpnext = in jbd2_journal_commit_transaction()
1062 commit_transaction->t_cpprev = in jbd2_journal_commit_transaction()
1063 commit_transaction->t_cpnext->t_cpprev; in jbd2_journal_commit_transaction()
1064 commit_transaction->t_cpnext->t_cpprev = in jbd2_journal_commit_transaction()
1065 commit_transaction; in jbd2_journal_commit_transaction()
1066 commit_transaction->t_cpprev->t_cpnext = in jbd2_journal_commit_transaction()
1067 commit_transaction; in jbd2_journal_commit_transaction()
1075 J_ASSERT(commit_transaction->t_state == T_COMMIT_JFLUSH); in jbd2_journal_commit_transaction()
1077 commit_transaction->t_start = jiffies; in jbd2_journal_commit_transaction()
1079 commit_transaction->t_start); in jbd2_journal_commit_transaction()
1084 stats.ts_tid = commit_transaction->t_tid; in jbd2_journal_commit_transaction()
1086 atomic_read(&commit_transaction->t_handle_count); in jbd2_journal_commit_transaction()
1088 commit_transaction->t_tid, &stats.run); in jbd2_journal_commit_transaction()
1089 stats.ts_requested = (commit_transaction->t_requested) ? 1 : 0; in jbd2_journal_commit_transaction()
1091 commit_transaction->t_state = T_COMMIT_CALLBACK; in jbd2_journal_commit_transaction()
1092 J_ASSERT(commit_transaction == journal->j_committing_transaction); in jbd2_journal_commit_transaction()
1093 journal->j_commit_sequence = commit_transaction->t_tid; in jbd2_journal_commit_transaction()
1110 journal->j_commit_callback(journal, commit_transaction); in jbd2_journal_commit_transaction()
1112 trace_jbd2_end_commit(journal, commit_transaction); in jbd2_journal_commit_transaction()
1118 commit_transaction->t_state = T_FINISHED; in jbd2_journal_commit_transaction()
1120 if (commit_transaction->t_checkpoint_list == NULL && in jbd2_journal_commit_transaction()
1121 commit_transaction->t_checkpoint_io_list == NULL) { in jbd2_journal_commit_transaction()
1122 __jbd2_journal_drop_transaction(journal, commit_transaction); in jbd2_journal_commit_transaction()
1123 jbd2_journal_free_transaction(commit_transaction); in jbd2_journal_commit_transaction()