jbd2: Use tracepoints for history file
The /proc/fs/jbd2/<dev>/history was maintained manually; by using tracepoints, we can get all of the existing functionality of the /proc file plus extra capabilities thanks to the ftrace infrastructure. We save memory as a bonus. Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
This commit is contained in:
@@ -643,6 +643,7 @@ out:
|
||||
|
||||
int __jbd2_journal_remove_checkpoint(struct journal_head *jh)
|
||||
{
|
||||
struct transaction_chp_stats_s *stats;
|
||||
transaction_t *transaction;
|
||||
journal_t *journal;
|
||||
int ret = 0;
|
||||
@@ -679,6 +680,12 @@ int __jbd2_journal_remove_checkpoint(struct journal_head *jh)
|
||||
|
||||
/* OK, that was the last buffer for the transaction: we can now
|
||||
safely remove this transaction from the log */
|
||||
stats = &transaction->t_chp_stats;
|
||||
if (stats->cs_chp_time)
|
||||
stats->cs_chp_time = jbd2_time_diff(stats->cs_chp_time,
|
||||
jiffies);
|
||||
trace_jbd2_checkpoint_stats(journal->j_fs_dev->bd_dev,
|
||||
transaction->t_tid, stats);
|
||||
|
||||
__jbd2_journal_drop_transaction(journal, transaction);
|
||||
kfree(transaction);
|
||||
|
Reference in New Issue
Block a user