On Thu, 20 Jun 2024 16:19:03 +0000
Takaya Saeki <taka...@chromium.org> wrote:

> +DECLARE_EVENT_CLASS(mm_filemap_op_page_cache_range,
> +
> +     TP_PROTO(
> +             struct address_space *mapping,
> +             pgoff_t index,
> +             pgoff_t last_index
> +     ),
> +
> +     TP_ARGS(mapping, index, last_index),
> +
> +     TP_STRUCT__entry(
> +             __field(unsigned long, i_ino)
> +             __field(dev_t, s_dev)
> +             __field(unsigned long, index)
> +             __field(unsigned long, last_index)
> +     ),
> +
> +     TP_fast_assign(
> +             __entry->i_ino = mapping->host->i_ino;
> +             if (mapping->host->i_sb)
> +                     __entry->s_dev =
> +                             mapping->host->i_sb->s_dev;
> +             else
> +                     __entry->s_dev = mapping->host->i_rdev;
> +             __entry->index = index;
> +             __entry->last_index = last_index;
> +     ),
> +
> +     TP_printk(
> +             "dev=%d:%d ino=%lx ofs=%lld max_ofs=%lld",
> +             MAJOR(__entry->s_dev),
> +             MINOR(__entry->s_dev), __entry->i_ino,
> +             ((loff_t)__entry->index) << PAGE_SHIFT,
> +             ((loff_t)__entry->last_index) << PAGE_SHIFT
> +     )

Hmm, since the "ofs" is in decimal, perhaps we should just make it a range:

                "dev=%d:%d ino=%lx ofs=%lld-%lld",
                MAJOR(__entry->s_dev),
                MINOR(__entry->s_dev), __entry->i_ino,
                ((loff_t)__entry->index) << PAGE_SHIFT,
                (((loff_t)__entry->last_index + 1) << PAGE_SHIFT - 1)

?

-- Steve

> +);
> +
> +DEFINE_EVENT(mm_filemap_op_page_cache_range, mm_filemap_get_pages,
> +     TP_PROTO(
> +             struct address_space *mapping,
> +             pgoff_t index,
> +             pgoff_t last_index
> +     ),
> +     TP_ARGS(mapping, index, last_index)
> +);
> +
> +DEFINE_EVENT(mm_filemap_op_page_cache_range, mm_filemap_map_pages,
> +     TP_PROTO(
> +             struct address_space *mapping,
> +             pgoff_t index,
> +             pgoff_t last_index
> +     ),
> +     TP_ARGS(mapping, index, last_index)
> +);
> +

Reply via email to