mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-10 07:00:48 +00:00
sched: clean up min_vruntime use
clean up min_vruntime use. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
2830cf8c90
commit
b0ffd246ea
@ -124,6 +124,16 @@ max_vruntime(u64 min_vruntime, u64 vruntime)
|
|||||||
return min_vruntime;
|
return min_vruntime;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline u64
|
||||||
|
min_vruntime(u64 min_vruntime, u64 vruntime)
|
||||||
|
{
|
||||||
|
s64 delta = (s64)(vruntime - min_vruntime);
|
||||||
|
if (delta < 0)
|
||||||
|
min_vruntime = vruntime;
|
||||||
|
|
||||||
|
return min_vruntime;
|
||||||
|
}
|
||||||
|
|
||||||
static inline s64
|
static inline s64
|
||||||
entity_key(struct cfs_rq *cfs_rq, struct sched_entity *se)
|
entity_key(struct cfs_rq *cfs_rq, struct sched_entity *se)
|
||||||
{
|
{
|
||||||
@ -251,7 +261,7 @@ __update_curr(struct cfs_rq *cfs_rq, struct sched_entity *curr,
|
|||||||
unsigned long delta_exec)
|
unsigned long delta_exec)
|
||||||
{
|
{
|
||||||
unsigned long delta_exec_weighted;
|
unsigned long delta_exec_weighted;
|
||||||
u64 next_vruntime, min_vruntime;
|
u64 vruntime;
|
||||||
|
|
||||||
schedstat_set(curr->exec_max, max((u64)delta_exec, curr->exec_max));
|
schedstat_set(curr->exec_max, max((u64)delta_exec, curr->exec_max));
|
||||||
|
|
||||||
@ -269,19 +279,13 @@ __update_curr(struct cfs_rq *cfs_rq, struct sched_entity *curr,
|
|||||||
* value tracking the leftmost vruntime in the tree.
|
* value tracking the leftmost vruntime in the tree.
|
||||||
*/
|
*/
|
||||||
if (first_fair(cfs_rq)) {
|
if (first_fair(cfs_rq)) {
|
||||||
next_vruntime = __pick_next_entity(cfs_rq)->vruntime;
|
vruntime = min_vruntime(curr->vruntime,
|
||||||
|
__pick_next_entity(cfs_rq)->vruntime);
|
||||||
/* min_vruntime() := !max_vruntime() */
|
|
||||||
min_vruntime = max_vruntime(curr->vruntime, next_vruntime);
|
|
||||||
if (min_vruntime == next_vruntime)
|
|
||||||
min_vruntime = curr->vruntime;
|
|
||||||
else
|
|
||||||
min_vruntime = next_vruntime;
|
|
||||||
} else
|
} else
|
||||||
min_vruntime = curr->vruntime;
|
vruntime = curr->vruntime;
|
||||||
|
|
||||||
cfs_rq->min_vruntime =
|
cfs_rq->min_vruntime =
|
||||||
max_vruntime(cfs_rq->min_vruntime, min_vruntime);
|
max_vruntime(cfs_rq->min_vruntime, vruntime);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void update_curr(struct cfs_rq *cfs_rq)
|
static void update_curr(struct cfs_rq *cfs_rq)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user