android_kernel_samsung_sm8650/kernel/sched/walt
Stephen Dickey c017cdda8a sched/walt: make partially halted cpus equivalent cap to silvers
In certain usecases there are extensive runnables on
silver cpus while there is ample opportunity to perform newidle
balance to partially halted cpus to relieve the load on silvers.

Currently, the check_for_higher_capacity() indicates that the
partially halted cpus are to be considered higher cap than min-cap
cpus.

Change this such that the capacities of the cpus are seen
as being the same during comparison, regardless of any small offset
in capacity between the two. This should mean that load balance
should happen more readily between the two, since this is a similar
cap operation.

Also in walt_lb_find_busiest_similar_cap_cpu() there was a change
introduced to prevent partially halted cpus from pulling tasks from
its unhalted sibling. This was done for cleanliness. Since the
partially halted cpu typically runs at the same or higher
frequency as its sibling, there is no need to prevent it from helping
an unhalted sibling. This is no longer correct when the cpus are exactly
the same capcity.

Update walt_lb_find_busiest_similar_cap_cpu() to delete
this condition such that a busiest cpu can be found when considering
a partially halted cpu as a destination or source cpu.

Change-Id: I6bc840d707752fa641e9616b42c8d28775d74a88
Signed-off-by: Stephen Dickey <quic_dickey@quicinc.com>
2023-09-28 10:57:33 -07:00
..
boost.c sched/walt: Remove references to EXPORT_SYMBOL 2023-09-07 12:01:00 -07:00
core_ctl.c sched/walt: Remove references to EXPORT_SYMBOL 2023-09-07 12:01:00 -07:00
cpufreq_walt.c sched/walt: Add reasons flags for fmax capping 2023-09-13 11:34:24 -07:00
fixup.c
input-boost.c
Kconfig
Makefile
perf_trace_counters.h sched: walt: add stalls to sched_switch_with_ctrs 2023-07-13 14:16:24 -07:00
preemptirq_long.c
preemptirq_long.h
sched_avg.c sched/walt: Remove references to EXPORT_SYMBOL 2023-09-07 12:01:00 -07:00
sysctl.c sched/walt: make packing control nodes per cluster 2023-09-20 14:17:14 -07:00
trace.c
trace.h sched/walt: Remove QOS request libraries 2023-09-13 11:34:24 -07:00
walt_cfs.c sched/walt: Introduce bug_on lockdep failures 2023-08-15 11:04:45 -07:00
walt_debug.c
walt_debug.h
walt_halt.c sched/walt: drain_rq_cpu_stop should unpin the rq lock 2023-09-22 17:08:03 -07:00
walt_lb.c sched/walt: make partially halted cpus equivalent cap to silvers 2023-09-28 10:57:33 -07:00
walt_rt.c sched/walt: Use softaffinity for RT tasks 2023-07-28 17:16:21 -07:00
walt_tp.c arch/arm64/kernel: Add parameters to sched_switch_with_ctrs 2023-04-07 16:38:18 -07:00
walt.c sched/walt: Update capacities instantly on capping 2023-09-14 12:03:02 -07:00
walt.h sched/walt: make partially halted cpus equivalent cap to silvers 2023-09-28 10:57:33 -07:00