From 0f70f669d0efcf7ed3922c5b64b06e121a48db0e Mon Sep 17 00:00:00 2001 From: Sasha Levin Date: Fri, 2 Feb 2024 16:45:11 -0500 Subject: [PATCH] Drop cpufreq-schedutil-use-a-fixed-reference-frequency.patch Signed-off-by: Sasha Levin --- ...util-use-a-fixed-reference-frequency.patch | 80 ------------------- queue-6.6/series | 1 - ...util-use-a-fixed-reference-frequency.patch | 80 ------------------- queue-6.7/series | 1 - 4 files changed, 162 deletions(-) delete mode 100644 queue-6.6/cpufreq-schedutil-use-a-fixed-reference-frequency.patch delete mode 100644 queue-6.7/cpufreq-schedutil-use-a-fixed-reference-frequency.patch diff --git a/queue-6.6/cpufreq-schedutil-use-a-fixed-reference-frequency.patch b/queue-6.6/cpufreq-schedutil-use-a-fixed-reference-frequency.patch deleted file mode 100644 index 6ed73d09244..00000000000 --- a/queue-6.6/cpufreq-schedutil-use-a-fixed-reference-frequency.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 6dd7d8f215dbefd664a11f603c9c827c68d403fc Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Mon, 11 Dec 2023 11:48:51 +0100 -Subject: cpufreq/schedutil: Use a fixed reference frequency - -From: Vincent Guittot - -[ 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 -Signed-off-by: Ingo Molnar -Tested-by: Lukasz Luba -Reviewed-by: Lukasz Luba -Reviewed-by: Dietmar Eggemann -Acked-by: Rafael J. Wysocki -Acked-by: Viresh Kumar -Link: https://lore.kernel.org/r/20231211104855.558096-4-vincent.guittot@linaro.org -Signed-off-by: Sasha Levin ---- - 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 - diff --git a/queue-6.6/series b/queue-6.6/series index 661d0d3142a..75641ef9bdf 100644 --- a/queue-6.6/series +++ b/queue-6.6/series @@ -12,7 +12,6 @@ powerpc-lib-validate-size-for-vector-operations.patch 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 diff --git a/queue-6.7/cpufreq-schedutil-use-a-fixed-reference-frequency.patch b/queue-6.7/cpufreq-schedutil-use-a-fixed-reference-frequency.patch deleted file mode 100644 index e3c83675b20..00000000000 --- a/queue-6.7/cpufreq-schedutil-use-a-fixed-reference-frequency.patch +++ /dev/null @@ -1,80 +0,0 @@ -From d40f5e9b1ae695a3940b16ad9dfdb0c0ebc8ee1e Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Mon, 11 Dec 2023 11:48:51 +0100 -Subject: cpufreq/schedutil: Use a fixed reference frequency - -From: Vincent Guittot - -[ 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 -Signed-off-by: Ingo Molnar -Tested-by: Lukasz Luba -Reviewed-by: Lukasz Luba -Reviewed-by: Dietmar Eggemann -Acked-by: Rafael J. Wysocki -Acked-by: Viresh Kumar -Link: https://lore.kernel.org/r/20231211104855.558096-4-vincent.guittot@linaro.org -Signed-off-by: Sasha Levin ---- - 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 - diff --git a/queue-6.7/series b/queue-6.7/series index 8bf9ae7d31c..df7947e950d 100644 --- a/queue-6.7/series +++ b/queue-6.7/series @@ -12,7 +12,6 @@ x86-mce-mark-fatal-mce-s-page-as-poison-to-avoid-pan.patch 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 -- 2.47.3