Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
fork

Configure Feed

Select the types of activity you want to include in your feed.

x86/sched: Restore the SD_ASYM_PACKING flag in the DIE domain

Commit 8f2d6c41e5a6 ("x86/sched: Rewrite topology setup") dropped the
SD_ASYM_PACKING flag in the DIE domain added in commit 044f0e27dec6
("x86/sched: Add the SD_ASYM_PACKING flag to the die domain of hybrid
processors"). Restore it on hybrid processors.

The die-level domain does not depend on any build configuration and now
x86_sched_itmt_flags() is always needed. Remove the build dependency on
CONFIG_SCHED_[SMT|CLUSTER|MC].

Fixes: 8f2d6c41e5a6 ("x86/sched: Rewrite topology setup")
Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Chen Yu <yu.c.chen@intel.com>
Tested-by: Caleb Callaway <caleb.callaway@intel.com>
Link: https://lkml.kernel.org/r/20230815035747.11529-1-ricardo.neri-calderon@linux.intel.com

authored by

Ricardo Neri and committed by
Ingo Molnar
108af4b4 450e7497

+9 -3
+9 -3
arch/x86/kernel/smpboot.c
··· 579 579 } 580 580 581 581 582 - #if defined(CONFIG_SCHED_SMT) || defined(CONFIG_SCHED_CLUSTER) || defined(CONFIG_SCHED_MC) 583 582 static inline int x86_sched_itmt_flags(void) 584 583 { 585 584 return sysctl_sched_itmt_enabled ? SD_ASYM_PACKING : 0; ··· 602 603 return cpu_cluster_flags() | x86_sched_itmt_flags(); 603 604 } 604 605 #endif 605 - #endif 606 + 607 + static int x86_die_flags(void) 608 + { 609 + if (cpu_feature_enabled(X86_FEATURE_HYBRID_CPU)) 610 + return x86_sched_itmt_flags(); 611 + 612 + return 0; 613 + } 606 614 607 615 /* 608 616 * Set if a package/die has multiple NUMA nodes inside. ··· 646 640 */ 647 641 if (!x86_has_numa_in_package) { 648 642 x86_topology[i++] = (struct sched_domain_topology_level){ 649 - cpu_cpu_mask, SD_INIT_NAME(DIE) 643 + cpu_cpu_mask, x86_die_flags, SD_INIT_NAME(DIE) 650 644 }; 651 645 } 652 646