From: Steven Rostedt <rostedt@goodmis.org>
To: Rajesh Bhagat <rajesh.lnx@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>,
Ingo Molnar <mingo@redhat.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/1] ftrace: fix dynamic ftrace filter reset issue
Date: Fri, 23 Mar 2012 15:36:40 -0400 [thread overview]
Message-ID: <1332531400.23924.71.camel@gandalf.stny.rr.com> (raw)
In-Reply-To: <CA+jqyFDRBkeAA8OPuBmAoj_ZF_HgR-U6Eu1QQ8oe_PKeN1pVFQ@mail.gmail.com>
On Wed, 2012-03-21 at 11:22 +0530, Rajesh Bhagat wrote:
> >From 60ec8a88ba671fa0b424f7b4467dba3ea8a2a2c8 Mon Sep 17 00:00:00 2001
> From: Rajesh Bhagat <rajesh.lnx@gmail.com>
> Date: Tue, 20 Mar 2012 10:35:59 +0530
> Subject: [PATCH 1/1] ftrace: fix dynamic ftrace filter reset issue
>
> This patch resets the trace_array using tracing_reset_online_cpus, if same
> tracer is set again instead of just returning from funtion tracing_set_tracer.
>
> problem description
> -------------------
> once function tracer is set, set_ftrace_filter not working.
> /debug/tracing # echo function > current_tracer
> /debug/tracing # echo schedule > set_ftrace_filter
> /debug/tracing # echo function > current_tracer
Sorry no. The correct way you want to do this is:
/debug/tracing # echo > trace
That will reset the buffer for you and give you the desired result.
-- Steve
> /debug/tracing # cat trace
> # tracer: function
> #
> # TASK-PID CPU# TIMESTAMP FUNCTION
> # | | | | |
> <idle>-0 [000] 21.997778: irq_enter <-handle_IRQ
> <idle>-0 [000] 21.997785: idle_cpu <-irq_enter
> <idle>-0 [000] 21.997794: local_bh_disable <-irq_enter
> <idle>-0 [000] 21.997800: tick_check_idle <-irq_enter
> <idle>-0 [000] 21.997807:
> tick_check_oneshot_broadcast <-tick_check_idle
> <idle>-0 [000] 21.997814: _local_bh_enable <-irq_enter
>
> After applying this patch, only filtered functions are traced.
>
> Signed-off-by: Rajesh Bhagat <rajesh.lnx@gmail.com>
> ---
> kernel/trace/trace.c | 4 +++-
> 1 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
> index a3f1bc5..f4fb190 100644
> --- a/kernel/trace/trace.c
> +++ b/kernel/trace/trace.c
> @@ -3058,8 +3058,10 @@ static int tracing_set_tracer(const char *buf)
> ret = -EINVAL;
> goto out;
> }
> - if (t == current_trace)
> + if (t == current_trace) {
> + tracing_reset_online_cpus(tr);
> goto out;
> + }
>
> trace_branch_disable();
> if (current_trace && current_trace->reset)
next prev parent reply other threads:[~2012-03-23 19:36 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-21 5:52 Rajesh Bhagat
2012-03-23 19:36 ` Steven Rostedt [this message]
2012-03-24 4:17 ` Rajesh Bhagat
2012-03-24 4:53 ` Rajesh Bhagat
2012-03-24 13:55 ` Steven Rostedt
2012-03-25 18:11 ` Rajesh Bhagat
2012-03-26 17:45 ` Steven Rostedt
2012-03-27 3:51 ` Rajesh Bhagat
2012-03-26 17:13 ` Steven Rostedt
2012-03-26 18:19 ` Rajesh Bhagat
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=1332531400.23924.71.camel@gandalf.stny.rr.com \
--to=rostedt@goodmis.org \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=rajesh.lnx@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®