From ae0e61175e22b77267c2c59d0061925a0a604074 Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Thu, 16 Nov 2023 20:41:10 -0500 Subject: [PATCH] bcachefs: Add a tracepoint for journal entry close Signed-off-by: Kent Overstreet --- fs/bcachefs/journal.c | 2 ++ fs/bcachefs/trace.h | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/fs/bcachefs/journal.c b/fs/bcachefs/journal.c index 63fb115da157b..fb983061af4a2 100644 --- a/fs/bcachefs/journal.c +++ b/fs/bcachefs/journal.c @@ -184,6 +184,8 @@ static void __journal_entry_close(struct journal *j, unsigned closed_val) /* Close out old buffer: */ buf->data->u64s = cpu_to_le32(old.cur_entry_offset); + trace_journal_entry_close(c, vstruct_bytes(buf->data)); + sectors = vstruct_blocks_plus(buf->data, c->block_bits, buf->u64s_reserved) << c->block_bits; BUG_ON(sectors > buf->sectors); diff --git a/fs/bcachefs/trace.h b/fs/bcachefs/trace.h index f663f21b07f33..52db4df67c3aa 100644 --- a/fs/bcachefs/trace.h +++ b/fs/bcachefs/trace.h @@ -188,6 +188,25 @@ DEFINE_EVENT(bch_fs, journal_entry_full, TP_ARGS(c) ); +TRACE_EVENT(journal_entry_close, + TP_PROTO(struct bch_fs *c, unsigned bytes), + TP_ARGS(c, bytes), + + TP_STRUCT__entry( + __field(dev_t, dev ) + __field(u32, bytes ) + ), + + TP_fast_assign( + __entry->dev = c->dev; + __entry->bytes = bytes; + ), + + TP_printk("%d,%d entry bytes %u", + MAJOR(__entry->dev), MINOR(__entry->dev), + __entry->bytes) +); + DEFINE_EVENT(bio, journal_write, TP_PROTO(struct bio *bio), TP_ARGS(bio) -- 2.30.2