Re: [PATCH 1/2] sched: Some sched trace points should depend on SCHEDSTATS

From: yangoliver
Date: Sat Oct 10 2015 - 23:39:44 EST


Steve,

Any comments about this patch?

I think I addressed your question about why sched_stat_template is still
required. Because another tracepoint depends on it, and that tracepoint
doesn't depend on SCHEDSTATS.

If you thought this patch is valid, I could re-submit it with a separte
patch.

On Tue, 4 Aug 2015, Oliver Yang wrote:

>
>
> On 2015/8/4 1:34, Steven Rostedt wrote:
> > On Mon, 27 Jul 2015 09:11:51 -0400
> > yangoliver <yang_oliver@xxxxxxxxxxx> wrote:
> >
> >> When SCHEDSTATS is not enabled, follow trace points shouldn't be
> >> accessed by default,
> >>
> >> sched:sched_stat_wait
> >> sched:sched_stat_sleep
> >> sched:sched_stat_iowait
> >> sched:sched_stat_blocked
> >>
> >> These trace points should only be available when SCHEDSTATS is
> >> enabled.
> >>
> >> Signed-off-by: Yong Yang <yangoliver@xxxxxxxxx>
> >> ---
> >> include/trace/events/sched.h | 2 ++
> >> 1 file changed, 2 insertions(+)
> >>
> >> diff --git a/include/trace/events/sched.h b/include/trace/events/sched.h
> >> index d57a575..5b34309 100644
> >> --- a/include/trace/events/sched.h
> >> +++ b/include/trace/events/sched.h
> >> @@ -334,6 +334,7 @@ DECLARE_EVENT_CLASS(sched_stat_template,
> >> );
> >>
> >>
> >> +#ifdef CONFIG_SCHEDSTATS
> > Why not also surround the sched_stat_template too? That also creates
> > code even if no event uses it.
> Steve,
>
> Because the sched_stat_template is used by sched_stat_runtime.
> The sched_stat_runtime is used event without SCHEDSTATS option enabled.
>
> And the se.sum_exec_runtime counter is also similar. I don't think this counter is
> defined for SCHEDSTATS.
>
> Yes. I just try to make our trace points design be similar with SCHEDSTATS counters
> design.
>
> > -- Steve
> >
> >> /*
> >> * Tracepoint for accounting wait time (time the task is runnable
> >> * but not actually running due to scheduler contention).
> >> @@ -364,6 +365,7 @@ DEFINE_EVENT(sched_stat_template, sched_stat_iowait,
> >> DEFINE_EVENT(sched_stat_template, sched_stat_blocked,
> >> TP_PROTO(struct task_struct *tsk, u64 delay),
> >> TP_ARGS(tsk, delay));
> >> +#endif
> >>
> >> /*
> >> * Tracepoint for accounting runtime (time the task is executing
>
>
--
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/