[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170328080824.uujenx4e6n5kwk5d@hirez.programming.kicks-ass.net>
Date: Tue, 28 Mar 2017 10:08:24 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Dietmar Eggemann <dietmar.eggemann@....com>
Cc: Ingo Molnar <mingo@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
Matt Fleming <matt@...eblueprint.co.uk>,
Vincent Guittot <vincent.guittot@...aro.org>,
Steven Rostedt <rostedt@...dmis.org>,
Morten Rasmussen <morten.rasmussen@....com>,
Juri Lelli <juri.lelli@....com>,
Patrick Bellasi <patrick.bellasi@....com>
Subject: Re: [RFC PATCH 4/5] sched/events: Introduce sched_entity load
tracking trace event
On Tue, Mar 28, 2017 at 07:35:40AM +0100, Dietmar Eggemann wrote:
> diff --git a/include/trace/events/sched.h b/include/trace/events/sched.h
> index 51db8a90e45f..647cfaf528fd 100644
> --- a/include/trace/events/sched.h
> +++ b/include/trace/events/sched.h
> @@ -566,14 +566,15 @@ TRACE_EVENT(sched_wake_idle_without_ipi,
> #ifdef CONFIG_SMP
> #ifdef CREATE_TRACE_POINTS
> static inline
> -int __trace_sched_cpu(struct cfs_rq *cfs_rq)
> +int __trace_sched_cpu(struct cfs_rq *cfs_rq, struct sched_entity *se)
> {
> #ifdef CONFIG_FAIR_GROUP_SCHED
> - struct rq *rq = cfs_rq->rq;
> + struct rq *rq = cfs_rq ? cfs_rq->rq : NULL;
> #else
> - struct rq *rq = container_of(cfs_rq, struct rq, cfs);
> + struct rq *rq = cfs_rq ? container_of(cfs_rq, struct rq, cfs) : NULL;
> #endif
> - return cpu_of(rq);
> + return rq ? cpu_of(rq)
> + : task_cpu((container_of(se, struct task_struct, se)));
> }
So here you duplicate lots of FAIR_GROUP internals. So why do you then
have to expose group_cfs_rq() in the previous patch?
Powered by blists - more mailing lists