Sultan Alsawaf b084e3b2a0 cpuidle: lpm-levels: Remove idle prediction feature
There is a lot of CPU time spent in hrtimer_try_to_cancel() when exiting
idle according to perf. This is due to the idle prediction feature
constantly arming and canceling a timer that it uses to track prediction
accuracy. Idle prediction itself is used to try and select shallower
idle states when an incoming wake-up is predicted in order to improve
performance, but performance is actually better without idle prediction,
presumably thanks to eliminating the hrtimer_try_to_cancel() overhead.

The code for idle prediction is removed wholesale because the toggle
doesn't cover everything, and it's easier to just nuke the whole feature
than it is to try and cover everything with a toggle.

Change-Id: I906ed0d5943f1049201ffb7c31001f5e19a10157
Signed-off-by: Sultan Alsawaf <sultan@kerneltoast.com>
[dereference23: Forward port to 4.14]
Signed-off-by: Alexander Winkowski <dereference23@outlook.com>
Signed-off-by: Cyber Knight <cyberknight755@gmail.com>
Signed-off-by: Richard Raya <rdxzv.dev@gmail.com>
2024-05-26 16:20:53 -03:00
..