Lines Matching refs:rq
9 rq_sched_info_arrive(struct rq *rq, unsigned long long delta) in rq_sched_info_arrive() argument
11 if (rq) { in rq_sched_info_arrive()
12 rq->rq_sched_info.run_delay += delta; in rq_sched_info_arrive()
13 rq->rq_sched_info.pcount++; in rq_sched_info_arrive()
21 rq_sched_info_depart(struct rq *rq, unsigned long long delta) in rq_sched_info_depart() argument
23 if (rq) in rq_sched_info_depart()
24 rq->rq_cpu_time += delta; in rq_sched_info_depart()
28 rq_sched_info_dequeued(struct rq *rq, unsigned long long delta) in rq_sched_info_dequeued() argument
30 if (rq) in rq_sched_info_dequeued()
31 rq->rq_sched_info.run_delay += delta; in rq_sched_info_dequeued()
44 static inline void rq_sched_info_arrive (struct rq *rq, unsigned long long delta) { } in rq_sched_info_arrive() argument
45 static inline void rq_sched_info_dequeued(struct rq *rq, unsigned long long delta) { } in rq_sched_info_dequeued() argument
46 static inline void rq_sched_info_depart (struct rq *rq, unsigned long long delta) { } in rq_sched_info_depart() argument
122 struct rq *rq; in psi_ttwu_dequeue() local
130 rq = __task_rq_lock(p, &rf); in psi_ttwu_dequeue()
133 __task_rq_unlock(rq, &rf); in psi_ttwu_dequeue()
147 static inline void psi_task_tick(struct rq *rq) in psi_task_tick() argument
152 if (unlikely(rq->curr->in_memstall)) in psi_task_tick()
153 psi_memstall_tick(rq->curr, cpu_of(rq)); in psi_task_tick()
162 static inline void psi_task_tick(struct rq *rq) {} in psi_task_tick() argument
177 static inline void sched_info_dequeued(struct rq *rq, struct task_struct *t) in sched_info_dequeued() argument
179 unsigned long long now = rq_clock(rq), delta = 0; in sched_info_dequeued()
188 rq_sched_info_dequeued(rq, delta); in sched_info_dequeued()
196 static void sched_info_arrive(struct rq *rq, struct task_struct *t) in sched_info_arrive() argument
198 unsigned long long now = rq_clock(rq), delta = 0; in sched_info_arrive()
207 rq_sched_info_arrive(rq, delta); in sched_info_arrive()
215 static inline void sched_info_queued(struct rq *rq, struct task_struct *t) in sched_info_queued() argument
219 t->sched_info.last_queued = rq_clock(rq); in sched_info_queued()
231 static inline void sched_info_depart(struct rq *rq, struct task_struct *t) in sched_info_depart() argument
233 unsigned long long delta = rq_clock(rq) - t->sched_info.last_arrival; in sched_info_depart()
235 rq_sched_info_depart(rq, delta); in sched_info_depart()
238 sched_info_queued(rq, t); in sched_info_depart()
247 __sched_info_switch(struct rq *rq, struct task_struct *prev, struct task_struct *next) in __sched_info_switch() argument
254 if (prev != rq->idle) in __sched_info_switch()
255 sched_info_depart(rq, prev); in __sched_info_switch()
257 if (next != rq->idle) in __sched_info_switch()
258 sched_info_arrive(rq, next); in __sched_info_switch()
262 sched_info_switch(struct rq *rq, struct task_struct *prev, struct task_struct *next) in sched_info_switch() argument
265 __sched_info_switch(rq, prev, next); in sched_info_switch()
269 # define sched_info_queued(rq, t) do { } while (0) argument
271 # define sched_info_dequeued(rq, t) do { } while (0) argument
272 # define sched_info_depart(rq, t) do { } while (0) argument
273 # define sched_info_arrive(rq, next) do { } while (0) argument
274 # define sched_info_switch(rq, t, next) do { } while (0) argument