[PATCH 0/3] cpufreq: schedutil: move slow path from workqueue to SCHED_FIFO task
From: Viresh Kumar
Date: Fri Nov 11 2016 - 05:22:41 EST
Hi,
If slow path frequency changes are conducted in a SCHED_OTHER context
then they may be delayed for some amount of time, including
indefinitely, when real time or deadline activity is taking place.
Move the slow path to a real time kernel thread using the kthread worker
infrastructure. In the future the thread should be made SCHED_DEADLINE.
The RT priority is arbitrarily set to 50 for now.
This was tested with Hackbench on ARM Exynos, dual core A15 platform and
no regressions were seen. The second patch has more details on it.
This work was started by Steve Muckle, where he used a simple kthread
instead of kthread-worker and that wasn't sufficient as some guarantees
weren't met.
I was wondering if the same should be done for ondemand/conservative
governors as well ?
--
viresh
Viresh Kumar (3):
cpufreq: schedutil: enable fast switch earlier
cpufreq: schedutil: move slow path from workqueue to SCHED_FIFO task
cpufreq: schedutil: irq-work is used only in slow path
kernel/sched/cpufreq_schedutil.c | 85 ++++++++++++++++++++++++++++++----------
1 file changed, 65 insertions(+), 20 deletions(-)
--
2.7.1.410.g6faf27b