[PATCH v2 0/3] sched/deadline: Fix double accounting in push_dl_task() & some cleanups

From: Dietmar Eggemann
Date: Fri Aug 02 2019 - 10:59:53 EST


While running a simple DL workload (1 DL (12000/100000/100000) task
per CPU) on Arm64 & x86 systems I noticed that some of the
SCHED_WARN_ON() in the rq/running bandwidth (bw) functions trigger.
Patch 1/3 contains a proposal to fix this.

Patch 2-3/3 contain smaller cleanups I discovered while
debugging the actual issue.

Changes v1->v2:
- Remove rq/running bw accounting in pull_dl_task() as well [1/3]
- Remove v1's "sched/deadline: Remove unused int flags from
__dequeue_task_dl()"
- Change return to BUG_ON() in dequeue in !on_dl_rq case [3/3]
- Remove v1's "sched/deadline: Use return value of SCHED_WARN_ON()
in bw accounting"

Dietmar Eggemann (3):
sched/deadline: Fix double accounting of rq/running bw in push & pull
sched/deadline: Use __sub_running_bw() throughout
dl_change_utilization()
sched/deadline: Cleanup on_dl_rq() handling

kernel/sched/deadline.c | 21 ++++++---------------
1 file changed, 6 insertions(+), 15 deletions(-)

--
2.17.1