sched/{core,fair}: trigger OPP change request on fork()
authorJuri Lelli <juri.lelli@arm.com>
Fri, 26 Jun 2015 11:14:23 +0000 (12:14 +0100)
committerAmit Pundir <amit.pundir@linaro.org>
Wed, 14 Sep 2016 09:28:22 +0000 (14:58 +0530)
commita0933a372d84e341911f2a09cdb9980584315f03
tree080c9496cb6f5458d71a044d7a4b3bdb2859afe1
parentd2bf66aac444a8d0ea95e5ff17a0e8563766c594
sched/{core,fair}: trigger OPP change request on fork()

Patch "sched/fair: add triggers for OPP change requests" introduced OPP
change triggers for enqueue_task_fair(), but the trigger was operating only
for wakeups. Fact is that it makes sense to consider wakeup_new also (i.e.,
fork()), as we don't know anything about a newly created task and thus we
most certainly want to jump to max OPP to not harm performance too much.

However, it is not currently possible (or at least it wasn't evident to me
how to do so :/) to tell new wakeups from other (non wakeup) operations.

This patch introduces an additional flag in sched.h that is only set at
fork() time and it is then consumed in enqueue_task_fair() for our purpose.

cc: Ingo Molnar <mingo@redhat.com>
cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Juri Lelli <juri.lelli@arm.com>
Signed-off-by: Steve Muckle <smuckle@linaro.org>
kernel/sched/core.c
kernel/sched/fair.c
kernel/sched/sched.h