lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 31 Aug 2009 14:03:10 -0400 (EDT)
From:	Steven Rostedt <rostedt@...dmis.org>
To:	Xiao Guangrong <xiaoguangrong@...fujitsu.com>
cc:	Ingo Molnar <mingo@...e.hu>, David Miller <davem@...emloft.net>,
	Neil Horman <nhorman@...driver.com>,
	Frederic Weisbecker <fweisbec@...il.com>,
	Wei Yongjun <yjwei@...fujitsu.com>,
	Netdev <netdev@...r.kernel.org>,
	LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH resend] tracing/events: convert NAPI's tracepoint via
 TRACE_EVENT


On Mon, 31 Aug 2009, Xiao Guangrong wrote:

> - Convert NAPI's tracepoint via TRACE_EVENT macro, the output information
>   like below:
> 
>    sshd-2503  [000]    71.920846: napi_poll: ifname=eth0 state=0 weigth=16 poll=pcnet32_poll
>    sshd-2503  [000]    72.020291: napi_poll: ifname=eth0 state=0 weigth=16 poll=pcnet32_poll
>    sshd-2503  [000]    72.020418: napi_poll: ifname=eth0 state=NAPI_STATE_SCHED weigth=16 poll=pcnet32_poll
> 
> - Remove the "DECLARE_TRACE" definiens in include/trace/define_trace.h,
>   because TRACE_EVENT not use it

The above really needs to be in a separate patch, since it is a tracing 
infrastructure change.

-- Steve

> 
> Signed-off-by: Xiao Guangrong <xiaoguangrong@...fujitsu.com>
> ---
>  include/trace/define_trace.h |    4 ---
>  include/trace/events/napi.h  |   43 +++++++++++++++++++++++++++++++++++++----
>  2 files changed, 38 insertions(+), 9 deletions(-)
> 
> diff --git a/include/trace/define_trace.h b/include/trace/define_trace.h
> index 2a4b3bf..6158741 100644
> --- a/include/trace/define_trace.h
> +++ b/include/trace/define_trace.h
> @@ -31,10 +31,6 @@
>  		assign, print, reg, unreg)			\
>  	DEFINE_TRACE_FN(name, reg, unreg)
>  
> -#undef DECLARE_TRACE
> -#define DECLARE_TRACE(name, proto, args)	\
> -	DEFINE_TRACE(name)
> -
>  #undef TRACE_INCLUDE
>  #undef __TRACE_INCLUDE
>  
> diff --git a/include/trace/events/napi.h b/include/trace/events/napi.h
> index a8989c4..5c7a192 100644
> --- a/include/trace/events/napi.h
> +++ b/include/trace/events/napi.h
> @@ -1,11 +1,44 @@
> -#ifndef _TRACE_NAPI_H_
> -#define _TRACE_NAPI_H_
> +#undef TRACE_SYSTEM
> +#define TRACE_SYSTEM napi
> +
> +#if !defined(_TRACE_NAPI_H) || defined(TRACE_HEADER_MULTI_READ)
> +#define _TRACE_NAPI_H
>  
>  #include <linux/netdevice.h>
>  #include <linux/tracepoint.h>
>  
> -DECLARE_TRACE(napi_poll,
> +#define show_napi_state(state) state ? __print_flags(state, "|",	\
> +	{ (1UL << NAPI_STATE_SCHED),	"NAPI_STATE_SCHED"	},	\
> +	{ (1UL << NAPI_STATE_DISABLE),	"NAPI_STATE_DISABLE"	},	\
> +	{ (1UL << NAPI_STATE_NPSVC),	"NAPI_STATE_NPSVC"	}) : "0"
> +
> +TRACE_EVENT(napi_poll,
> +
>  	TP_PROTO(struct napi_struct *napi),
> -	TP_ARGS(napi));
>  
> -#endif
> +	TP_ARGS(napi),
> +
> +	TP_STRUCT__entry(
> +		__field(	unsigned long,	state		)
> +		__field(	int,		weight		)
> +		__field(	void *,		poll		)
> +		__string(	ifname,		(napi->dev ?
> +				napi->dev->name : "backlog")	)
> +	),
> +
> +	TP_fast_assign(
> +		__entry->state	= napi->state;
> +		__entry->weight	= napi->weight;
> +		__entry->poll	= napi->poll;
> +		__assign_str(ifname, napi->dev ? napi->dev->name : "backlog")
> +	),
> +
> +	TP_printk("ifname=%s state=%s weight=%d poll=%pf",
> +		  __get_str(ifname), show_napi_state(__entry->state),
> +		  __entry->weight, __entry->poll)
> +);
> +
> +#endif /* _TRACE_NAPI_H */
> +
> +/* This part must be outside protection */
> +#include <trace/define_trace.h>
> -- 
> 1.6.1.2
> 
> 
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists