Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f1ac8c57 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "sched/topology: Enable EAS on SMP systems also"

parents 197886b6 80721eec
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -608,6 +608,22 @@ static void update_top_cache_domain(int cpu)
	rcu_assign_pointer(per_cpu(sd_asym_packing, cpu), sd);

	sd = lowest_flag_domain(cpu, SD_ASYM_CPUCAPACITY);
	/*
	 * EAS gets disabled when there are no asymmetric capacity
	 * CPUs in the system. For example, all big CPUs are
	 * hotplugged out on a b.L system. We want EAS enabled
	 * all the time to get both power and perf benefits. So,
	 * lets assign sd_asym_cpucapacity to the only available
	 * sched domain. This is also important for a single cluster
	 * systems which wants to use EAS.
	 *
	 * Setting sd_asym_cpucapacity() to a sched domain which
	 * has all symmetric capacity CPUs is technically incorrect but
	 * works well for us in getting EAS enabled all the time.
	 */
	if (!sd)
		sd = cpu_rq(cpu)->sd;

	rcu_assign_pointer(per_cpu(sd_asym_cpucapacity, cpu), sd);
}