summaryrefslogtreecommitdiffstats
path: root/drivers/pci/hotplug/pciehp_hpc.c
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2019-07-18 10:53:21 +0200
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2019-08-05 11:02:44 +0200
commit32b91ca15353b2803d27cfc747156e72dd2cd5d8 (patch)
treef43ea5891bdf8dcddea33d960be9273d6bfa96a1 /drivers/pci/hotplug/pciehp_hpc.c
parent7dcddef6f769d7e60691c732eb6d09cdb1d9df76 (diff)
downloadtalos-op-linux-32b91ca15353b2803d27cfc747156e72dd2cd5d8.tar.gz
talos-op-linux-32b91ca15353b2803d27cfc747156e72dd2cd5d8.zip
cpuidle: menu: Allow tick to be stopped if PM QoS is used
After commit 554c8aa8ecad ("sched: idle: Select idle state before stopping the tick") the menu governor prevents the scheduler tick from being stopped (unless stopped already) if there is a PM QoS latency constraint for the given CPU and the target residency of the deepest idle state matching that constraint is below the tick boundary. However, that is problematic if CPUs with PM QoS latency constraints are idle for long times, because it effectively causes the tick to run on them all the time which is wasteful. [It is also confusing and questionable if they are full dynticks CPUs.] To address that issue, make the menu governor allow the tick to be stopped only if the idle duration predicted by it is beyond the tick boundary, except when the shallowest idle state is selected upfront and it is not a "polling" one. Fixes: 554c8aa8ecad ("sched: idle: Select idle state before stopping the tick") Link: https://lore.kernel.org/lkml/79b247b3-e056-610e-9a07-e685dfdaa6c9@gmail.com/ Reported-by: Thomas Lindroth <thomas.lindroth@gmail.com> Tested-by: Thomas Lindroth <thomas.lindroth@gmail.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/pci/hotplug/pciehp_hpc.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud