TREE_AVG and APPROX_AVG are initial task placement policies that have been disabled for a long while.. time to remove them.
Unified · Split
| @@ -594,18 +594,14 @@ enum { · 593 unmodified lines | ||
| 594 | 594 | SCHED_FEAT_NEW_FAIR_SLEEPERS = 1, |
| 595 | 595 | SCHED_FEAT_WAKEUP_PREEMPT = 2, |
| 596 | 596 | SCHED_FEAT_START_DEBIT = 4, |
| 597 | − SCHED_FEAT_TREE_AVG = 8, | |
| 598 | − SCHED_FEAT_APPROX_AVG = 16, | |
| 599 | − SCHED_FEAT_HRTICK = 32, | |
| 600 | − SCHED_FEAT_DOUBLE_TICK = 64, | |
| 597 | + SCHED_FEAT_HRTICK = 8, | |
| 598 | + SCHED_FEAT_DOUBLE_TICK = 16, | |
| 601 | 599 | }; |
| 602 | 600 | |
| 603 | 601 | const_debug unsigned int sysctl_sched_features = |
| 604 | 602 | SCHED_FEAT_NEW_FAIR_SLEEPERS * 1 | |
| 605 | 603 | SCHED_FEAT_WAKEUP_PREEMPT * 1 | |
| 606 | 604 | SCHED_FEAT_START_DEBIT * 1 | |
| 607 | − SCHED_FEAT_TREE_AVG * 0 | | |
| 608 | − SCHED_FEAT_APPROX_AVG * 0 | | |
| 609 | 605 | SCHED_FEAT_HRTICK * 1 | |
| 610 | 606 | SCHED_FEAT_DOUBLE_TICK * 0; |
| 611 | 607 | |
| @@ -302,11 +302,6 @@ static u64 __sched_vslice(unsigned long rq_weight, unsigned long nr_running) · 301 unmodified lines | ||
| 302 | 302 | return vslice; |
| 303 | 303 | } |
| 304 | 304 | |
| 305 | −static u64 sched_vslice(struct cfs_rq *cfs_rq) | |
| 306 | −{ | |
| 307 | − return __sched_vslice(cfs_rq->load.weight, cfs_rq->nr_running); | |
| 308 | −} | |
| 309 | − | |
| 310 | 305 | static u64 sched_vslice_add(struct cfs_rq *cfs_rq, struct sched_entity *se) |
| 311 | 306 | { |
| 312 | 307 | return __sched_vslice(cfs_rq->load.weight + se->load.weight, |
| @@ -504,15 +499,6 @@ place_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int initial) · 191 unmodified lines | ||
| 504 | 499 | } else |
| 505 | 500 | vruntime = cfs_rq->min_vruntime; |
| 506 | 501 | |
| 507 | − if (sched_feat(TREE_AVG)) { | |
| 508 | − struct sched_entity *last = __pick_last_entity(cfs_rq); | |
| 509 | − if (last) { | |
| 510 | − vruntime += last->vruntime; | |
| 511 | − vruntime >>= 1; | |
| 512 | − } | |
| 513 | − } else if (sched_feat(APPROX_AVG) && cfs_rq->nr_running) | |
| 514 | − vruntime += sched_vslice(cfs_rq)/2; | |
| 515 | − | |
| 516 | 502 | /* |
| 517 | 503 | * The 'current' period is already promised to the current tasks, |
| 518 | 504 | * however the extra weight of the new task will slow them down a |