Re: [PATCH 3/3] tracing/ksym_tracer: support quick clear for ksym_trace_filter

K.Prasad
2009-07-22T15:18:10Z

On Wed, Jul 22, 2009 at 05:56:49PM +0800, Xiao Guangrong wrote:
>
>
> K.Prasad wrote:
> > On Wed, Jul 22, 2009 at 11:25:14AM +0800, Xiao Guangrong wrote:
> >> It's rather bored to clear symbol one by one in ksym_trace_filter
> >> file, so, this patch can let ksym_trace_filter file support quick
> >> clear, we can write "0" to this file, it can clear all symbols
> >>
> >> for example:
> >> # cat ksym_trace_filter
> >> ksym_filter_head:rw-
> >> global_trace:rw-
> >> # echo 0 > ksym_trace_filter
> >> # cat ksym_trace_filter
> >> #
> >>
> >
> > It's nice to have this feature added and the other patches fix issues in
> > ksym tracer. Can you have this patch add the capability to clear all
> > breakpoints in one-shot through wild-cards?
> >
>
> It already can clear all breakpoints in one-shot by write "0" to
> ksym_trace_filter file, do you means that we need to support other
> way for it? like:
>
> echo > ksym_trace_filter
> echo "*:---" > ksym_trace_filter
>
> IMHO, one way to clear all breakpoints is enough, no need to add
> more code for the same function, for example, in trace events filter,
> only echo 0 > filter can properly clear all filters.
>
> Are you sure other way is necessary?
>
> Thanks,
> Xiao
>

As I stated before, the ability to support
echo "*:---" > ksym_trace_filter was Ingo Molnar's suggestion, so if
he's not particular about having it now we may skip it.

However, given that it requires just a few lines of code in addition,
say

+ /* Clear all breakpoints if echo "*:---" > ksym_trace_filter */
+ if ((strncmp(ksymname, "*", strlen("*")) == 0) && (op == 0)) {
+ ksym_trace_reset(NULL);
+ kfree(input_string);
+ return count;
+ }

in ksym_trace_filter_write(), and that the patch is already present it
shouldn't be bothersome to add it.

Thanks,
K.Prasad