linux-kernelorg-stable/arch/x86/kernel
Peter Zijlstra cabdc3a847 sched,x86: Don't use cluster topology for x86 hybrid CPUs
For x86 hybrid CPUs like Alder Lake, the order of CPU selection should
be based strictly on CPU priority.  Don't include cluster topology for
hybrid CPUs to avoid interference with such CPU selection order.

On Alder Lake, the Atom CPU cluster has more capacity (4 Atom CPUs) vs
Big core cluster (2 hyperthread CPUs). This could potentially bias CPU
selection towards Atom over Big Core, when Big core CPU has higher
priority.

Fixes: 66558b730f ("sched: Add cluster scheduler level for x86")
Suggested-by: Tim Chen <tim.c.chen@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Tim Chen <tim.c.chen@linux.intel.com>
Tested-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Link: https://lkml.kernel.org/r/20211204091402.GM16608@worktop.programming.kicks-ass.net
2021-12-08 22:15:37 +01:00
..
acpi x86: ACPI: cstate: Optimize C3 entry on AMD CPUs 2021-10-01 20:44:31 +02:00
apic x86/apic: Reduce cache line misses in __x2apic_send_IPI_mask() 2021-10-29 10:02:17 +02:00
cpu Two X86 fixes: 2021-11-21 11:25:19 -08:00
fpu x86/fpu/signal: Initialize sw_bytes in save_xstate_epilog() 2021-11-30 15:13:47 -08:00
kprobes ftrace: disable preemption when recursion locked 2021-10-27 11:21:49 -04:00
.gitignore
Makefile x86/sev: Add an x86 version of cc_platform_has() 2021-10-04 11:46:20 +02:00
alternative.c x86/alternative: Add debug prints to apply_retpolines() 2021-10-28 23:25:28 +02:00
amd_gart_64.c x86/amd_gart: don't set failed sg dma_address to DMA_MAPPING_ERROR 2021-08-09 17:13:06 +02:00
amd_nb.c hwmon: (k10temp) Add support for yellow carp 2021-08-27 13:54:58 -07:00
aperture_64.c proc/vmcore: convert oldmem_pfn_is_ram callback to more generic vmcore callbacks 2021-11-09 10:02:48 -08:00
apm_32.c
asm-offsets.c
asm-offsets_32.c
asm-offsets_64.c
audit_64.c audit: add support for the openat2 syscall 2021-10-01 16:52:48 -04:00
bootflag.c
cc_platform.c x86/sev: Add an x86 version of cc_platform_has() 2021-10-04 11:46:20 +02:00
check.c
cpuid.c
crash.c
crash_core_32.c
crash_core_64.c
crash_dump_32.c
crash_dump_64.c x86/sev: Replace occurrences of sev_active() with cc_platform_has() 2021-10-04 11:46:58 +02:00
devicetree.c Devicetree updates for v5.16: 2021-11-02 22:22:13 -07:00
doublefault_32.c exit/doublefault: Remove apparently bogus comment about rewind_stack_do_exit 2021-10-20 13:09:43 -05:00
dumpstack.c x86/dumpstack: use %pSb/%pBb for backtrace printing 2021-07-08 11:48:22 -07:00
dumpstack_32.c
dumpstack_64.c x86/mm/64: Improve stack overflow warnings 2021-09-21 13:57:43 +02:00
e820.c
early-quirks.c x86/hpet: Use another crystalball to evaluate HPET usability 2021-10-01 13:38:13 +02:00
early_printk.c
ebda.c
eisa.c
espfix_64.c
ftrace.c x86/ftrace: Make function graph use ftrace directly 2021-10-20 23:44:43 -04:00
ftrace_32.S
ftrace_64.S x86/ftrace: Make function graph use ftrace directly 2021-10-20 23:44:43 -04:00
head32.c
head64.c treewide: Replace the use of mem_encrypt_active() with cc_platform_has() 2021-10-04 11:47:24 +02:00
head_32.S printk: Userspace format indexing support 2021-07-19 11:57:48 +02:00
head_64.S
hpet.c x86/hpet: Use another crystalball to evaluate HPET usability 2021-10-01 13:38:13 +02:00
hw_breakpoint.c
i8237.c
i8253.c
i8259.c x86: Avoid magic number with ELCR register accesses 2021-08-10 23:31:43 +02:00
idt.c
io_delay.c
ioport.c
irq.c x86/irq: Ensure PI wakeup handler is unregistered before module unload 2021-10-22 12:45:35 -04:00
irq_32.c x86/softirq: Disable softirq stacks on PREEMPT_RT 2021-09-27 12:28:32 +02:00
irq_64.c
irq_work.c
irqflags.S x86/xen: Make save_fl() noinstr 2021-09-17 13:14:44 +02:00
irqinit.c
itmt.c x86/sched: Decrease further the priorities of SMT siblings 2021-10-05 15:51:59 +02:00
jailhouse.c
jump_label.c jump_labels: Mark __jump_label_transform() as __always_inlined to work around aggressive compiler un-inlining 2021-07-13 06:32:05 +02:00
kdebugfs.c
kexec-bzimage64.c
kgdb.c
ksysfs.c
kvm.c Merge branch 'kvm-5.16-fixes' into kvm-master 2021-11-11 11:03:05 -05:00
kvmclock.c x86/sev: Replace occurrences of sev_active() with cc_platform_has() 2021-10-04 11:46:58 +02:00
ldt.c memcg: enable accounting for ldt_struct objects 2021-09-03 09:58:13 -07:00
machine_kexec_32.c
machine_kexec_64.c x86/sev: Replace occurrences of sev_active() with cc_platform_has() 2021-10-04 11:46:58 +02:00
mmconf-fam10h_64.c
module.c x86/alternative: Implement .retpoline_sites support 2021-10-28 23:25:27 +02:00
mpparse.c x86: Avoid magic number with ELCR register accesses 2021-08-10 23:31:43 +02:00
msr.c
nmi.c
nmi_selftest.c
paravirt-spinlocks.c
paravirt.c Merge branch 'kvm-guest-sev-migration' into kvm-master 2021-11-11 07:40:26 -05:00
pci-dma.c
pci-iommu_table.c
pci-swiotlb.c x86/sme: Replace occurrences of sme_active() with cc_platform_has() 2021-10-04 11:46:46 +02:00
pcspeaker.c
perf_regs.c
platform-quirks.c
pmem.c
probe_roms.c x86/pci/probe_roms: Use to_pci_driver() instead of pci_dev->driver 2021-10-18 09:20:15 -05:00
process.c x86: Pin task-stack in __get_wchan() 2021-11-19 10:14:57 -08:00
process.h
process_32.c x86/fpu: Move context switch and exit to user inlines into sched.h 2021-10-20 15:27:27 +02:00
process_64.c x86/fpu: Move context switch and exit to user inlines into sched.h 2021-10-20 15:27:27 +02:00
ptrace.c x86/fpu: Remove internal.h dependency from fpu/signal.h 2021-10-20 15:27:29 +02:00
pvclock.c
quirks.c
reboot.c x86/reboot: Limit Dell Optiplex 990 quirk to early BIOS versions 2021-08-12 12:06:58 +02:00
reboot_fixups_32.c
relocate_kernel_32.S
relocate_kernel_64.S x86/sme: Replace occurrences of sme_active() with cc_platform_has() 2021-10-04 11:46:46 +02:00
resource.c
rtc.c
setup.c x86/boot: Mark prepare_command_line() __init 2021-11-24 12:20:24 +01:00
setup_percpu.c memblock: use memblock_free for freeing virtual pointers 2021-11-06 13:30:41 -07:00
sev-shared.c - Export sev_es_ghcb_hv_call() so that HyperV Isolation VMs can use it too 2021-11-01 15:52:26 -07:00
sev.c x86/sev: Fix SEV-ES INS/OUTS instructions for word, dword, and qword 2021-12-03 18:09:30 +01:00
sev_verify_cbit.S
signal.c x86/signal: Use fpu::__state_user_size for sigalt stack validation 2021-10-26 10:18:09 +02:00
signal_compat.c signal: Verify the alignment and size of siginfo_t 2021-07-23 13:15:31 -05:00
smp.c
smpboot.c sched,x86: Don't use cluster topology for x86 hybrid CPUs 2021-12-08 22:15:37 +01:00
stacktrace.c
static_call.c static_call,x86: Robustify trampoline patching 2021-11-11 13:09:31 +01:00
step.c
sys_ia32.c
sys_x86_64.c
tboot.c
time.c
tls.c
tls.h
topology.c
trace.c trace/osnoise: Fix an ifdef comment 2021-10-25 23:02:36 -04:00
trace_clock.c
tracepoint.c
traps.c - Do not #GP on userspace use of CLI/STI but pretend it was a NOP to 2021-11-02 07:56:47 -07:00
tsc.c x86/tsc: Disable clocksource watchdog for TSC on qualified platorms 2021-12-02 00:40:36 +01:00
tsc_msr.c
tsc_sync.c x86/tsc: Add a timer to make sure TSC_adjust is always checked 2021-12-02 00:40:35 +01:00
umip.c x86/umip: Downgrade warning messages to debug loglevel 2021-09-25 13:23:28 +02:00
unwind_frame.c x86/unwind: Recover kretprobe trampoline entry 2021-09-30 21:24:07 -04:00
unwind_guess.c x86/unwind: Recover kretprobe trampoline entry 2021-09-30 21:24:07 -04:00
unwind_orc.c Merge branch 'akpm' (patches from Andrew) 2021-11-09 10:11:53 -08:00
uprobes.c
verify_cpu.S
vm86_32.c signal: Replace force_fatal_sig with force_exit_sig when in doubt 2021-11-19 09:15:58 -06:00
vmlinux.lds.S objtool,x86: Replace alternatives with .retpoline_sites 2021-10-28 23:25:25 +02:00
vsmp_64.c
x86_init.c