[PATCH] afs: fix tracepoint string placement with built-in AFS

Steven Rostedt rostedt at goodmis.org
Tue Jun 15 08:54:53 PDT 2021


On Tue, 15 Jun 2021 11:58:19 +0100
David Howells <dhowells at redhat.com> wrote:

> @@ -649,20 +705,21 @@ TRACE_EVENT(afs_cb_call,
>  
>  	    TP_STRUCT__entry(
>  		    __field(unsigned int,		call		)
> -		    __field(const char *,		name		)
>  		    __field(u32,			op		)
> +		    __field(u16,			service_id	)
>  			     ),
>  
>  	    TP_fast_assign(
>  		    __entry->call	= call->debug_id;
> -		    __entry->name	= call->type->name;
>  		    __entry->op		= call->operation_ID;
> +		    __entry->service_id	= call->service_id;
>  			   ),
>  
> -	    TP_printk("c=%08x %s o=%u",
> +	    TP_printk("c=%08x %s",
>  		      __entry->call,
> -		      __entry->name,
> -		      __entry->op)
> +		      __entry->service_id == 2501 ?
> +		      __print_symbolic(__entry->op, yfs_cm_operations) :
> +		      __print_symbolic(__entry->op, afs_cm_operations))
>  	    );
>  
>  TRACE_EVENT(afs_call,

Looks fine to me, and even saves 4 bytes on 64 bit machines (events are
rounded up to 4 byte increments, so the u16 is no different than a u32
here).

-- Steve



More information about the linux-afs mailing list