All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: Xing Zhengjun <zhengjun.xing@linux.intel.com>
Cc: Tom Zanussi <zanussi@kernel.org>,
	mingo@redhat.com, tom.zanussi@linux.intel.com,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3] trace:Add "gfp_t" support in synthetic_events
Date: Mon, 12 Aug 2019 23:04:03 -0400	[thread overview]
Message-ID: <20190812230403.01491479@oasis.local.home> (raw)
In-Reply-To: <ac10cc35-96f4-7f67-a259-2398d3136417@linux.intel.com>

On Tue, 13 Aug 2019 09:04:28 +0800
Xing Zhengjun <zhengjun.xing@linux.intel.com> wrote:

> Hi Steve,
> 
>     Could you help to review? Thanks.

Thanks for the ping. Yes, I'll take a look at it. I'll be pulling in a
lot of patches that have queued up.

-- Steve


> 
> On 7/13/2019 12:05 AM, Tom Zanussi wrote:
> > Hi Zhengjun,
> > 
> > On Fri, 2019-07-12 at 09:53 +0800, Zhengjun Xing wrote:  
> >> Add "gfp_t" support in synthetic_events, then the "gfp_t" type
> >> parameter in some functions can be traced.
> >>
> >> Prints the gfp flags as hex in addition to the human-readable flag
> >> string.  Example output:
> >>
> >>    whoopsie-630 [000] ...1 78.969452: testevent: bar=b20
> >> (GFP_ATOMIC|__GFP_ZERO)
> >>      rcuc/0-11  [000] ...1 81.097555: testevent: bar=a20 (GFP_ATOMIC)
> >>      rcuc/0-11  [000] ...1 81.583123: testevent: bar=a20 (GFP_ATOMIC)
> >>
> >> Signed-off-by: Tom Zanussi <zanussi@kernel.org>
> >> Signed-off-by: Zhengjun Xing <zhengjun.xing@linux.intel.com>  
> > 
> > Looks good to me, thanks!
> > 
> > Tom
> >   
> >> ---
> >>   kernel/trace/trace_events_hist.c | 19 +++++++++++++++++++
> >>   1 file changed, 19 insertions(+)
> >>
> >> diff --git a/kernel/trace/trace_events_hist.c
> >> b/kernel/trace/trace_events_hist.c
> >> index ca6b0dff60c5..30f0f32aca62 100644
> >> --- a/kernel/trace/trace_events_hist.c
> >> +++ b/kernel/trace/trace_events_hist.c
> >> @@ -13,6 +13,10 @@
> >>   #include <linux/rculist.h>
> >>   #include <linux/tracefs.h>
> >>   
> >> +/* for gfp flag names */
> >> +#include <linux/trace_events.h>
> >> +#include <trace/events/mmflags.h>
> >> +
> >>   #include "tracing_map.h"
> >>   #include "trace.h"
> >>   #include "trace_dynevent.h"
> >> @@ -752,6 +756,8 @@ static int synth_field_size(char *type)
> >>   		size = sizeof(unsigned long);
> >>   	else if (strcmp(type, "pid_t") == 0)
> >>   		size = sizeof(pid_t);
> >> +	else if (strcmp(type, "gfp_t") == 0)
> >> +		size = sizeof(gfp_t);
> >>   	else if (synth_field_is_string(type))
> >>   		size = synth_field_string_size(type);
> >>   
> >> @@ -792,6 +798,8 @@ static const char *synth_field_fmt(char *type)
> >>   		fmt = "%lu";
> >>   	else if (strcmp(type, "pid_t") == 0)
> >>   		fmt = "%d";
> >> +	else if (strcmp(type, "gfp_t") == 0)
> >> +		fmt = "%x";
> >>   	else if (synth_field_is_string(type))
> >>   		fmt = "%s";
> >>   
> >> @@ -834,9 +842,20 @@ static enum print_line_t
> >> print_synth_event(struct trace_iterator *iter,
> >>   					 i == se->n_fields - 1 ? ""
> >> : " ");
> >>   			n_u64 += STR_VAR_LEN_MAX / sizeof(u64);
> >>   		} else {
> >> +			struct trace_print_flags __flags[] = {
> >> +			    __def_gfpflag_names, {-1, NULL} };
> >> +
> >>   			trace_seq_printf(s, print_fmt, se-  
> >>> fields[i]->name,  
> >>   					 entry->fields[n_u64],
> >>   					 i == se->n_fields - 1 ? ""
> >> : " ");
> >> +
> >> +			if (strcmp(se->fields[i]->type, "gfp_t") ==
> >> 0) {
> >> +				trace_seq_puts(s, " (");
> >> +				trace_print_flags_seq(s, "|",
> >> +						      entry-  
> >>> fields[n_u64],  
> >> +						      __flags);
> >> +				trace_seq_putc(s, ')');
> >> +			}
> >>   			n_u64++;
> >>   		}
> >>   	}  
> 


  reply	other threads:[~2019-08-13  3:04 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-12  1:53 [PATCH v3] trace:Add "gfp_t" support in synthetic_events Zhengjun Xing
2019-07-12 16:05 ` Tom Zanussi
2019-08-13  1:04   ` Xing Zhengjun
2019-08-13  3:04     ` Steven Rostedt [this message]
2019-09-03  8:15       ` Xing Zhengjun
2019-09-04 10:43   ` Steven Rostedt
2019-09-04 13:13     ` Tom Zanussi
2019-09-04 16:59       ` Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190812230403.01491479@oasis.local.home \
    --to=rostedt@goodmis.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=tom.zanussi@linux.intel.com \
    --cc=zanussi@kernel.org \
    --cc=zhengjun.xing@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.