[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5e01a586-88d1-3bdf-68b7-10333f8a2dfe@arm.com>
Date: Wed, 29 Mar 2017 22:37:46 +0200
From: Dietmar Eggemann <dietmar.eggemann@....com>
To: Steven Rostedt <rostedt@...dmis.org>,
Peter Zijlstra <peterz@...radead.org>
Cc: Ingo Molnar <mingo@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
Matt Fleming <matt@...eblueprint.co.uk>,
Vincent Guittot <vincent.guittot@...aro.org>,
Morten Rasmussen <morten.rasmussen@....com>,
Juri Lelli <juri.lelli@....com>,
Patrick Bellasi <patrick.bellasi@....com>
Subject: Re: [RFC PATCH 2/5] sched/events: Introduce cfs_rq load tracking
trace event
On 03/28/2017 07:37 PM, Steven Rostedt wrote:
> On Tue, 28 Mar 2017 13:36:26 -0400
> Steven Rostedt <rostedt@...dmis.org> wrote:
>
>> But why play games, and rely on the design of the code? A
>> TRACE_EVENT_CONDTION() is more robust and documents that this
>> tracepoint should not be called when cfs_rq is NULL.
>
> In other words, what are you trying to save for not using the
> TRACE_EVENT_CONDITION()?
IMHO, if we could avoid this
if(cfs_rq)
trace_sched_load_cfs_rq(cfs_rq);
else
trace_sched_load_se(container_of(sa, struct sched_entity, avg));
in __update_load_avg(), then we can use 'unconditional' TRACE_EVENTs in
all call-sites:
__update_load_avg{_cfs_rq}(), propagate_entity_load_avg(),
attach_entity_load_avg(), detach_entity_load_avg() for cfs_rq and
__update_load_avg_blocked_se(), __update_load_avg_se(),
propagate_entity_load_avg() for se.
[...]
Powered by blists - more mailing lists