On 10/29/25 03:54, Jaegeuk Kim via Linux-f2fs-devel wrote:
> This adds a tracepoint in the fadvise call path.
>
> Signed-off-by: Jaegeuk Kim <[email protected]>
> ---
> fs/f2fs/file.c | 2 ++
> include/trace/events/f2fs.h | 32 ++++++++++++++++++++++++++++++++
> 2 files changed, 34 insertions(+)
>
> diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
> index 6d42e2d28861..4a81089c5df3 100644
> --- a/fs/f2fs/file.c
> +++ b/fs/f2fs/file.c
> @@ -5288,6 +5288,8 @@ static int f2fs_file_fadvise(struct file *filp, loff_t
> offset, loff_t len,
> struct inode *inode = file_inode(filp);
> int err;
>
> + trace_f2fs_fadvise(inode, offset, len, advice);
> +
> if (advice == POSIX_FADV_SEQUENTIAL) {
> if (S_ISFIFO(inode->i_mode))
> return -ESPIPE;
> diff --git a/include/trace/events/f2fs.h b/include/trace/events/f2fs.h
> index edbbd869078f..b7f5317b5980 100644
> --- a/include/trace/events/f2fs.h
> +++ b/include/trace/events/f2fs.h
> @@ -586,6 +586,38 @@ TRACE_EVENT(f2fs_file_write_iter,
> __entry->ret)
> );
>
> +TRACE_EVENT(f2fs_fadvise,
> +
> + TP_PROTO(struct inode *inode, loff_t offset, loff_t len, int advice),
> +
> + TP_ARGS(inode, offset, len, advice),
> +
> + TP_STRUCT__entry(
> + __field(dev_t, dev)
> + __field(ino_t, ino)
> + __field(loff_t, size)
> + __field(loff_t, offset)
> + __field(loff_t, len)
> + __field(int, advice)
> + ),
> +
> + TP_fast_assign(
> + __entry->dev = inode->i_sb->s_dev;
> + __entry->ino = inode->i_ino;
> + __entry->size = inode->i_size;
__entry->size = i_size_read(inode)?
Thanks,
> + __entry->offset = offset;
> + __entry->len = len;
> + __entry->advice = advice;
> + ),
> +
> + TP_printk("dev = (%d,%d), ino = %lu, i_size = %lld offset:%llu,
> len:%llu, advise:%d",
> + show_dev_ino(__entry),
> + (unsigned long long)__entry->size,
> + __entry->offset,
> + __entry->len,
> + __entry->advice)
> +);
> +
> TRACE_EVENT(f2fs_map_blocks,
> TP_PROTO(struct inode *inode, struct f2fs_map_blocks *map, int flag,
> int ret),
_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel