Re: [PATCH v11 22/28] tracing: Add enable_hist/disable_hist triggers

From: Tom Zanussi
Date: Tue Nov 03 2015 - 20:58:33 EST


On Tue, 2015-11-03 at 17:55 +0900, Namhyung Kim wrote:
> On Thu, Oct 22, 2015 at 01:14:26PM -0500, Tom Zanussi wrote:
> > Similar to enable_event/disable_event triggers, these triggers enable
> > and disable the aggregation of events into maps rather than enabling
> > and disabling their writing into the trace buffer.
> >
> > They can be used to automatically start and stop hist triggers based
> > on a matching filter condition.
> >
> > If there's a paused hist trigger on system:event, the following would
> > start it when the filter condition was hit:
> >
> > # echo enable_hist:system:event [ if filter] > event/trigger
> >
> > And the following would disable a running system:event hist trigger:
> >
> > # echo disable_hist:system:event [ if filter] > event/trigger
>
> What about named hist triggers? Maybe worth adding
> "enable/disable_hist_name" too?
>

enable_disable_hist should work fine with both named and unnamed hist
triggers. As an example, the below sets a couple each of both named and
unnamed triggers and enables and disables them using
enable/disable_hist. Running this I got the expected output i.e. there
were events captured in both named and unnamed histograms:

echo 'hist:name=foo:keys=skbaddr.hex:vals=len:pause if len < 0' > /sys/kernel/debug/tracing/events/net/netif_receive_skb/trigger
echo 'hist:name=foo:keys=skbaddr.hex:vals=len:pause if len > 256' > /sys/kernel/debug/tracing/events/net/netif_receive_skb/trigger
echo 'hist:keys=skbaddr.hex:vals=len:pause if len == 256' > /sys/kernel/debug/tracing/events/net/netif_receive_skb/trigger
echo 'hist:keys=skbaddr.hex:vals=len:pause' > /sys/kernel/debug/tracing/events/net/netif_receive_skb/trigger

echo 'enable_hist:net:netif_receive_skb if filename==/usr/bin/wget' > /sys/kernel/debug/tracing/events/sched/sched_process_exec/trigger
echo 'disable_hist:net:netif_receive_skb if comm==wget' > /sys/kernel/debug/tracing/events/sched/sched_process_exit/trigger

Thanks,

Tom

> Thanks,
> Namhyung
>
>
> >
> > See Documentation/trace/events.txt for real examples.
> >
> > Signed-off-by: Tom Zanussi <tom.zanussi@xxxxxxxxxxxxxxx>
> > Tested-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/