+++ /dev/null
-From 6dd7d8f215dbefd664a11f603c9c827c68d403fc Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 11 Dec 2023 11:48:51 +0100
-Subject: cpufreq/schedutil: Use a fixed reference frequency
-
-From: Vincent Guittot <vincent.guittot@linaro.org>
-
-[ Upstream commit b3edde44e5d4504c23a176819865cd603fd16d6c ]
-
-cpuinfo.max_freq can change at runtime because of boost as an example. This
-implies that the value could be different than the one that has been
-used when computing the capacity of a CPU.
-
-The new arch_scale_freq_ref() returns a fixed and coherent reference
-frequency that can be used when computing a frequency based on utilization.
-
-Use this arch_scale_freq_ref() when available and fallback to
-policy otherwise.
-
-Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
-Signed-off-by: Ingo Molnar <mingo@kernel.org>
-Tested-by: Lukasz Luba <lukasz.luba@arm.com>
-Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
-Reviewed-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
-Acked-by: Rafael J. Wysocki <rafael@kernel.org>
-Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
-Link: https://lore.kernel.org/r/20231211104855.558096-4-vincent.guittot@linaro.org
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- kernel/sched/cpufreq_schedutil.c | 26 ++++++++++++++++++++++++--
- 1 file changed, 24 insertions(+), 2 deletions(-)
-
-diff --git a/kernel/sched/cpufreq_schedutil.c b/kernel/sched/cpufreq_schedutil.c
-index 458d359f5991..7f6c9874a200 100644
---- a/kernel/sched/cpufreq_schedutil.c
-+++ b/kernel/sched/cpufreq_schedutil.c
-@@ -114,6 +114,28 @@ static void sugov_deferred_update(struct sugov_policy *sg_policy)
- }
- }
-
-+/**
-+ * get_capacity_ref_freq - get the reference frequency that has been used to
-+ * correlate frequency and compute capacity for a given cpufreq policy. We use
-+ * the CPU managing it for the arch_scale_freq_ref() call in the function.
-+ * @policy: the cpufreq policy of the CPU in question.
-+ *
-+ * Return: the reference CPU frequency to compute a capacity.
-+ */
-+static __always_inline
-+unsigned long get_capacity_ref_freq(struct cpufreq_policy *policy)
-+{
-+ unsigned int freq = arch_scale_freq_ref(policy->cpu);
-+
-+ if (freq)
-+ return freq;
-+
-+ if (arch_scale_freq_invariant())
-+ return policy->cpuinfo.max_freq;
-+
-+ return policy->cur;
-+}
-+
- /**
- * get_next_freq - Compute a new frequency for a given cpufreq policy.
- * @sg_policy: schedutil policy object to compute the new frequency for.
-@@ -140,9 +162,9 @@ static unsigned int get_next_freq(struct sugov_policy *sg_policy,
- unsigned long util, unsigned long max)
- {
- struct cpufreq_policy *policy = sg_policy->policy;
-- unsigned int freq = arch_scale_freq_invariant() ?
-- policy->cpuinfo.max_freq : policy->cur;
-+ unsigned int freq;
-
-+ freq = get_capacity_ref_freq(policy);
- util = map_util_perf(util);
- freq = map_util_freq(util, freq, max);
-
---
-2.43.0
-
x86-mce-mark-fatal-mce-s-page-as-poison-to-avoid-pan.patch
perf-core-fix-narrow-startup-race-when-creating-the-.patch
debugobjects-stop-accessing-objects-after-releasing-.patch
-cpufreq-schedutil-use-a-fixed-reference-frequency.patch
regulator-core-only-increment-use_count-when-enable_.patch
audit-send-netlink-ack-before-setting-connection-in-.patch
acpi-video-add-quirk-for-the-colorful-x15-at-23-lapt.patch
+++ /dev/null
-From d40f5e9b1ae695a3940b16ad9dfdb0c0ebc8ee1e Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Mon, 11 Dec 2023 11:48:51 +0100
-Subject: cpufreq/schedutil: Use a fixed reference frequency
-
-From: Vincent Guittot <vincent.guittot@linaro.org>
-
-[ Upstream commit b3edde44e5d4504c23a176819865cd603fd16d6c ]
-
-cpuinfo.max_freq can change at runtime because of boost as an example. This
-implies that the value could be different than the one that has been
-used when computing the capacity of a CPU.
-
-The new arch_scale_freq_ref() returns a fixed and coherent reference
-frequency that can be used when computing a frequency based on utilization.
-
-Use this arch_scale_freq_ref() when available and fallback to
-policy otherwise.
-
-Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
-Signed-off-by: Ingo Molnar <mingo@kernel.org>
-Tested-by: Lukasz Luba <lukasz.luba@arm.com>
-Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
-Reviewed-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
-Acked-by: Rafael J. Wysocki <rafael@kernel.org>
-Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
-Link: https://lore.kernel.org/r/20231211104855.558096-4-vincent.guittot@linaro.org
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- kernel/sched/cpufreq_schedutil.c | 26 ++++++++++++++++++++++++--
- 1 file changed, 24 insertions(+), 2 deletions(-)
-
-diff --git a/kernel/sched/cpufreq_schedutil.c b/kernel/sched/cpufreq_schedutil.c
-index 5888176354e2..11422c054c84 100644
---- a/kernel/sched/cpufreq_schedutil.c
-+++ b/kernel/sched/cpufreq_schedutil.c
-@@ -114,6 +114,28 @@ static void sugov_deferred_update(struct sugov_policy *sg_policy)
- }
- }
-
-+/**
-+ * get_capacity_ref_freq - get the reference frequency that has been used to
-+ * correlate frequency and compute capacity for a given cpufreq policy. We use
-+ * the CPU managing it for the arch_scale_freq_ref() call in the function.
-+ * @policy: the cpufreq policy of the CPU in question.
-+ *
-+ * Return: the reference CPU frequency to compute a capacity.
-+ */
-+static __always_inline
-+unsigned long get_capacity_ref_freq(struct cpufreq_policy *policy)
-+{
-+ unsigned int freq = arch_scale_freq_ref(policy->cpu);
-+
-+ if (freq)
-+ return freq;
-+
-+ if (arch_scale_freq_invariant())
-+ return policy->cpuinfo.max_freq;
-+
-+ return policy->cur;
-+}
-+
- /**
- * get_next_freq - Compute a new frequency for a given cpufreq policy.
- * @sg_policy: schedutil policy object to compute the new frequency for.
-@@ -140,9 +162,9 @@ static unsigned int get_next_freq(struct sugov_policy *sg_policy,
- unsigned long util, unsigned long max)
- {
- struct cpufreq_policy *policy = sg_policy->policy;
-- unsigned int freq = arch_scale_freq_invariant() ?
-- policy->cpuinfo.max_freq : policy->cur;
-+ unsigned int freq;
-
-+ freq = get_capacity_ref_freq(policy);
- util = map_util_perf(util);
- freq = map_util_freq(util, freq, max);
-
---
-2.43.0
-
sched-numa-fix-mm-numa_scan_seq-based-unconditional-.patch
perf-core-fix-narrow-startup-race-when-creating-the-.patch
debugobjects-stop-accessing-objects-after-releasing-.patch
-cpufreq-schedutil-use-a-fixed-reference-frequency.patch
sched-fair-fix-tg-load-when-offlining-a-cpu.patch
regulator-core-only-increment-use_count-when-enable_.patch
audit-send-netlink-ack-before-setting-connection-in-.patch