cpufreq / sched: SCHED_CPUFREQ_IOWAIT flag to indicate iowait condition
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 9 Sep 2016 21:59:33 +0000 (23:59 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 13 Sep 2016 21:36:01 +0000 (23:36 +0200)
commit8c34ab1910a79319731107ec8ecd2e80893ea30c
tree03d918ac7a7f8e51f9050ae81aeb8fa131015f82
parente323218fb9b839a5295d48b6c838e9c938649f5a
cpufreq / sched: SCHED_CPUFREQ_IOWAIT flag to indicate iowait condition

Testing indicates that it is possible to improve performace
significantly without increasing energy consumption too much by
teaching cpufreq governors to bump up the CPU performance level if
the in_iowait flag is set for the task in enqueue_task_fair().

For this purpose, define a new cpufreq_update_util() flag
SCHED_CPUFREQ_IOWAIT and modify enqueue_task_fair() to pass that
flag to cpufreq_update_util() in the in_iowait case.  That generally
requires cpufreq_update_util() to be called directly from there,
because update_load_avg() may not be invoked in that case.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Looks-good-to: Steve Muckle <smuckle@linaro.org>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
include/linux/sched.h
kernel/sched/fair.c