[PATCH] ext4: make trace_ext4_ext_load_extent print-format correctly

Gou Hao posted 1 patch 2 weeks, 2 days ago
include/trace/events/ext4.h | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
[PATCH] ext4: make trace_ext4_ext_load_extent print-format correctly
Posted by Gou Hao 2 weeks, 2 days ago
In commit '7d7ea89e756e', pass the 3rd param of trace_ext4_ext_load_extent
to _RET_IP, without modifying the print-format of it.

before this:
147.827896: ext4_ext_load_extent: dev 8,35 ino 272218 lblk 1135807 pblk 18446744072651077338

after this:
35.118227: ext4_ext_load_extent: dev 8,35 ino 272218 pblk 1135807 caller ext4_find_extent+0x17a/0x320 [ext4]

Fixes: 7d7ea89e756e ("ext4: refactor code to read the extent tree block")
Signed-off-by: Gou Hao <gouhao@uniontech.com>
---
 include/trace/events/ext4.h | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/include/trace/events/ext4.h b/include/trace/events/ext4.h
index 156908641..55061c36a 100644
--- a/include/trace/events/ext4.h
+++ b/include/trace/events/ext4.h
@@ -1707,28 +1707,28 @@ DEFINE_EVENT(ext4__map_blocks_exit, ext4_ind_map_blocks_exit,
 );
 
 TRACE_EVENT(ext4_ext_load_extent,
-	TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk),
+	TP_PROTO(struct inode *inode, ext4_fsblk_t pblk, unsigned long IP),
 
-	TP_ARGS(inode, lblk, pblk),
+	TP_ARGS(inode, pblk, IP),
 
 	TP_STRUCT__entry(
 		__field(	dev_t,		dev		)
 		__field(	ino_t,		ino		)
 		__field(	ext4_fsblk_t,	pblk		)
-		__field(	ext4_lblk_t,	lblk		)
+		__field(	unsigned long,	ip		)
 	),
 
 	TP_fast_assign(
 		__entry->dev    = inode->i_sb->s_dev;
 		__entry->ino    = inode->i_ino;
 		__entry->pblk	= pblk;
-		__entry->lblk	= lblk;
+		__entry->ip	= IP;
 	),
 
-	TP_printk("dev %d,%d ino %lu lblk %u pblk %llu",
+	TP_printk("dev %d,%d ino %lu pblk %llu caller %pS",
 		  MAJOR(__entry->dev), MINOR(__entry->dev),
 		  (unsigned long) __entry->ino,
-		  __entry->lblk, __entry->pblk)
+		  __entry->pblk, (void *)__entry->ip)
 );
 
 TRACE_EVENT(ext4_load_inode,
-- 
2.43.0
Re: [PATCH] ext4: make trace_ext4_ext_load_extent print-format correctly
Posted by Jan Kara 2 weeks, 2 days ago
On Tue 10-12-24 15:19:48, Gou Hao wrote:
> In commit '7d7ea89e756e', pass the 3rd param of trace_ext4_ext_load_extent
> to _RET_IP, without modifying the print-format of it.
> 
> before this:
> 147.827896: ext4_ext_load_extent: dev 8,35 ino 272218 lblk 1135807 pblk 18446744072651077338
> 
> after this:
> 35.118227: ext4_ext_load_extent: dev 8,35 ino 272218 pblk 1135807 caller ext4_find_extent+0x17a/0x320 [ext4]
> 
> Fixes: 7d7ea89e756e ("ext4: refactor code to read the extent tree block")
> Signed-off-by: Gou Hao <gouhao@uniontech.com>

Curious nobody notice earlier. Anyway, feel free to add:

Reviewed-by: Jan Kara <jack@suse.cz>

								Honza

> ---
>  include/trace/events/ext4.h | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/include/trace/events/ext4.h b/include/trace/events/ext4.h
> index 156908641..55061c36a 100644
> --- a/include/trace/events/ext4.h
> +++ b/include/trace/events/ext4.h
> @@ -1707,28 +1707,28 @@ DEFINE_EVENT(ext4__map_blocks_exit, ext4_ind_map_blocks_exit,
>  );
>  
>  TRACE_EVENT(ext4_ext_load_extent,
> -	TP_PROTO(struct inode *inode, ext4_lblk_t lblk, ext4_fsblk_t pblk),
> +	TP_PROTO(struct inode *inode, ext4_fsblk_t pblk, unsigned long IP),
>  
> -	TP_ARGS(inode, lblk, pblk),
> +	TP_ARGS(inode, pblk, IP),
>  
>  	TP_STRUCT__entry(
>  		__field(	dev_t,		dev		)
>  		__field(	ino_t,		ino		)
>  		__field(	ext4_fsblk_t,	pblk		)
> -		__field(	ext4_lblk_t,	lblk		)
> +		__field(	unsigned long,	ip		)
>  	),
>  
>  	TP_fast_assign(
>  		__entry->dev    = inode->i_sb->s_dev;
>  		__entry->ino    = inode->i_ino;
>  		__entry->pblk	= pblk;
> -		__entry->lblk	= lblk;
> +		__entry->ip	= IP;
>  	),
>  
> -	TP_printk("dev %d,%d ino %lu lblk %u pblk %llu",
> +	TP_printk("dev %d,%d ino %lu pblk %llu caller %pS",
>  		  MAJOR(__entry->dev), MINOR(__entry->dev),
>  		  (unsigned long) __entry->ino,
> -		  __entry->lblk, __entry->pblk)
> +		  __entry->pblk, (void *)__entry->ip)
>  );
>  
>  TRACE_EVENT(ext4_load_inode,
> -- 
> 2.43.0
> 
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR