stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/10] Backport uclamp vs margin fixes into 5.10.y
@ 2023-03-18 17:39 Qais Yousef
  2023-03-18 17:39 ` [PATCH v2 01/10] sched/uclamp: Make task_fits_capacity() use util_fits_cpu() Qais Yousef
                   ` (10 more replies)
  0 siblings, 11 replies; 13+ messages in thread
From: Qais Yousef @ 2023-03-18 17:39 UTC (permalink / raw)
  To: stable, Greg Kroah-Hartman
  Cc: Peter Zijlstra, Vincent Guittot, Dietmar Eggemann, Qais Yousef

Changes in v2:
	* Fix compilation error against patch 7 due to misiplace #endif to
	  protect against CONFIG_SMP which doesn't contain the newly added
	  field to struct rq.

Commit 2ff401441711 ("sched/uclamp: Fix relationship between uclamp and
migration margin") was cherry-picked into 5.10 kernels but missed the rest of
the series.

This ports the remainder of the fixes.

Based on 5.10.172.

NOTE:

a2e90611b9f4 ("sched/fair: Remove capacity inversion detection") is not
necessary to backport because it has a dependency on e5ed0550c04c ("sched/fair:
unlink misfit task from cpu overutilized") which is nice to have but not
strictly required. It improves the search for best CPU under adverse thermal
pressure to try harder. And the new search effectively replaces the capacity
inversion detection, so it is removed afterwards.

Build tested on (cross compile when necessary; x86_64 otherwise):

	1. default ubuntu config which has uclamp + smp
	2. default ubuntu config without uclamp + smp
	3. default ubunto config without smp (which automatically disables
	   uclamp)
	4. reported riscv-allnoconfig, mips-randconfig, x86_64-randocnfigs

Tested on 5.10 Android GKI kernel and android device (with slight modifications
due to other conflicts on there).

Qais Yousef (10):
  sched/uclamp: Make task_fits_capacity() use util_fits_cpu()
  sched/uclamp: Fix fits_capacity() check in feec()
  sched/uclamp: Make select_idle_capacity() use util_fits_cpu()
  sched/uclamp: Make asym_fits_capacity() use util_fits_cpu()
  sched/uclamp: Make cpu_overutilized() use util_fits_cpu()
  sched/uclamp: Cater for uclamp in find_energy_efficient_cpu()'s early
    exit condition
  sched/fair: Detect capacity inversion
  sched/fair: Consider capacity inversion in util_fits_cpu()
  sched/uclamp: Fix a uninitialized variable warnings
  sched/fair: Fixes for capacity inversion detection

 kernel/sched/core.c  |  10 +--
 kernel/sched/fair.c  | 183 ++++++++++++++++++++++++++++++++++---------
 kernel/sched/sched.h |  70 ++++++++++++++++-
 3 files changed, 217 insertions(+), 46 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2023-04-18 13:23 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-18 17:39 [PATCH v2 00/10] Backport uclamp vs margin fixes into 5.10.y Qais Yousef
2023-03-18 17:39 ` [PATCH v2 01/10] sched/uclamp: Make task_fits_capacity() use util_fits_cpu() Qais Yousef
2023-03-18 17:39 ` [PATCH v2 02/10] sched/uclamp: Fix fits_capacity() check in feec() Qais Yousef
2023-03-18 17:39 ` [PATCH v2 03/10] sched/uclamp: Make select_idle_capacity() use util_fits_cpu() Qais Yousef
2023-03-18 17:39 ` [PATCH v2 04/10] sched/uclamp: Make asym_fits_capacity() " Qais Yousef
2023-03-18 17:39 ` [PATCH v2 05/10] sched/uclamp: Make cpu_overutilized() " Qais Yousef
2023-03-18 17:39 ` [PATCH v2 06/10] sched/uclamp: Cater for uclamp in find_energy_efficient_cpu()'s early exit condition Qais Yousef
2023-03-18 17:39 ` [PATCH v2 07/10] sched/fair: Detect capacity inversion Qais Yousef
2023-03-18 17:39 ` [PATCH v2 08/10] sched/fair: Consider capacity inversion in util_fits_cpu() Qais Yousef
2023-03-18 17:39 ` [PATCH v2 09/10] sched/uclamp: Fix a uninitialized variable warnings Qais Yousef
2023-03-18 17:39 ` [PATCH v2 10/10] sched/fair: Fixes for capacity inversion detection Qais Yousef
2023-04-18 13:03 ` [PATCH v2 00/10] Backport uclamp vs margin fixes into 5.10.y Qais Yousef
2023-04-18 13:23   ` Greg Kroah-Hartman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).