lkml.org 
[lkml]   [2017]   [Mar]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [RFC PATCH 4/5] sched/events: Introduce sched_entity load tracking trace event
    From
    Date
    On 03/28/2017 10:05 AM, Peter Zijlstra wrote:
    > On Tue, Mar 28, 2017 at 07:35:40AM +0100, Dietmar Eggemann wrote:
    >> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
    >> index 04d4f81b96ae..d1dcb19f5b55 100644
    >> --- a/kernel/sched/fair.c
    >> +++ b/kernel/sched/fair.c
    >> @@ -2940,6 +2940,8 @@ __update_load_avg(u64 now, int cpu, struct sched_avg *sa,
    >>
    >> if (cfs_rq)
    >> trace_sched_load_cfs_rq(cfs_rq);
    >> + else
    >> + trace_sched_load_se(container_of(sa, struct sched_entity, avg));
    >>
    >> return decayed;
    >> }
    >> @@ -3162,6 +3164,7 @@ static inline int propagate_entity_load_avg(struct sched_entity *se)
    >> update_tg_cfs_load(cfs_rq, se);
    >>
    >> trace_sched_load_cfs_rq(cfs_rq);
    >> + trace_sched_load_se(se);
    >>
    >> return 1;
    >> }
    >
    > Having back-to-back tracepoints is disgusting.

    Yeah, but avoiding putting them like this is hard since the calls to
    update_tg_cfs_util() and update_tg_cfs_load() inside
    propagate_entity_load_avg() refresh util for the cfs_rq and the se
    respectively load (and runnable_load).

    \
     
     \ /
      Last update: 2017-03-28 16:06    [W:3.406 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site