gfs2: enhance log_blocks trace point to show log blocks free

This patch adds some code to enhance the log_blocks trace point. It
reports the number of free log blocks. This makes the trace point much
more useful, especially for debugging performance problems when we can
tell when the journal gets full and needs to wait for flushes, etc.

Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
This commit is contained in:
Bob Peterson 2020-08-20 08:59:28 -05:00 коммит произвёл Andreas Gruenbacher
Родитель 77650bdbd2
Коммит 97c5e43d51
1 изменённых файлов: 4 добавлений и 2 удалений

Просмотреть файл

@ -388,15 +388,17 @@ TRACE_EVENT(gfs2_log_blocks,
TP_STRUCT__entry(
__field( dev_t, dev )
__field( int, blocks )
__field( int, blks_free )
),
TP_fast_assign(
__entry->dev = sdp->sd_vfs->s_dev;
__entry->blocks = blocks;
__entry->blks_free = atomic_read(&sdp->sd_log_blks_free);
),
TP_printk("%u,%u log reserve %d", MAJOR(__entry->dev),
MINOR(__entry->dev), __entry->blocks)
TP_printk("%u,%u log reserve %d %d", MAJOR(__entry->dev),
MINOR(__entry->dev), __entry->blocks, __entry->blks_free)
);
/* Writing back the AIL */