[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20231009060037.170765-1-sshegde@linux.vnet.ibm.com>
Date: Mon, 9 Oct 2023 11:30:35 +0530
From: Shrikanth Hegde <sshegde@...ux.vnet.ibm.com>
To: mingo@...hat.com, peterz@...radead.org, vincent.guittot@...aro.org,
vschneid@...hat.com
Cc: sshegde@...ux.vnet.ibm.com, dietmar.eggemann@....com,
linux-kernel@...r.kernel.org, qperret@...gle.com,
srikar@...ux.vnet.ibm.com, mingo@...nel.org,
pierre.gondois@....com, yu.c.chen@...el.com,
tim.c.chen@...ux.intel.com, pauld@...hat.com, lukasz.luba@....com,
linux-doc@...r.kernel.org
Subject: [PATCH v6 0/2] sched: EAS changes for EM complexity and sysctl
In Brief:
[PATCH v6 1/2] sched/topology: Remove EM_MAX_COMPLEXITY limit
Since the EAS complexity was greatly reduced, bigger platforms can
handle EAS. To reflect this improvement, remove the EAS complexity check.
[PATCH v6 2/2] sched/topology: change behaviour of sysctl sched_energy_aware
based on the platform
Depending on the platform sysctl will either enable/disable EAS and NOP
in case if EAS is not supported.
Patchset contains these two patches. Second patch depends on the first
patch to be applied first.
v5->v6:
Valentin pointed out that sd_asym_cpucapacity is under rcu and to avoid
writing to sysctl if EAS is not possible. Did these two.
v4->v5:
sched_is_eas_possible missed handling of case when EM complexity was high.
Dietmar suggested that there was work done already which removes these
checks. Since it makes sched_is_eas_possible cleaner, picked up that
patch along with v4 and made it as a patchset.
Instead of using first CPU in cpu_active_mask, doing a simple loop across
all CPU in cpu_active_mask to check if there is any asymmetric CPU
capacities since it was breaking EAS capabilities over CPUSET islands.
v3->v4:
valentin suggested it would be better to consider simpler approach that
was mentioned in v2. It is a standard approach to keep the knob visible
but change how read and write are handled. Did that and Refactored the
code to use a common function in build_perf_domains and in sysctl handler.
v2->v3:
Chen Yu and Pierre Gondois both pointed out that if platform becomes
capable of EAS later, this patch was not allowing that to happen.
Addressed that by using a variable to indicate the sysctl change
and re-worded the commit message with desired behaviour,
v1->v2:
Chen Yu had pointed out that this will not destroy the perf domains on
architectures where EAS is supported by changing the sysctl.
[v1] Link: https://lore.kernel.org/lkml/20230829065040.920629-1-sshegde@linux.vnet.ibm.com/
[v2] Link: https://lore.kernel.org/lkml/20230901065249.137242-1-sshegde@linux.vnet.ibm.com/
[v3] Link: https://lore.kernel.org/lkml/20230913114807.665094-1-sshegde@linux.vnet.ibm.com/
[v4] Link: https://lore.kernel.org/lkml/20230926100046.405188-1-sshegde@linux.vnet.ibm.com/
[v5] Link: https://lore.kernel.org/lkml/20230929155209.667764-1-sshegde@linux.vnet.ibm.com/
Pierre Gondois (1):
sched/topology: Remove EM_MAX_COMPLEXITY limit
Shrikanth Hegde (1):
sched/topology: change behaviour of sysctl sched_energy_aware based on
the platform
Documentation/admin-guide/sysctl/kernel.rst | 3 +-
Documentation/scheduler/sched-energy.rst | 29 +---
kernel/sched/topology.c | 151 ++++++++++----------
3 files changed, 82 insertions(+), 101 deletions(-)
--
2.31.1
Powered by blists - more mailing lists