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

Configure Feed

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

Merge tag 'x86-core-2023-07-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 fix from Thomas Gleixner:
"A single fix for the mechanism to park CPUs with an INIT IPI.

On shutdown or kexec, the kernel tries to park the non-boot CPUs with
an INIT IPI. But the same code path is also used by the crash utility.
If the CPU which panics is not the boot CPU then it sends an INIT IPI
to the boot CPU which resets the machine.

Prevent this by validating that the CPU which runs the stop mechanism
is the boot CPU. If not, leave the other CPUs in HLT"

* tag 'x86-core-2023-07-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86/smp: Don't send INIT to boot CPU

+8
+8
arch/x86/kernel/smpboot.c
··· 1348 1348 if (apic->wakeup_secondary_cpu_64 || apic->wakeup_secondary_cpu) 1349 1349 return false; 1350 1350 1351 + /* 1352 + * If this is a crash stop which does not execute on the boot CPU, 1353 + * then this cannot use the INIT mechanism because INIT to the boot 1354 + * CPU will reset the machine. 1355 + */ 1356 + if (this_cpu) 1357 + return false; 1358 + 1351 1359 for_each_present_cpu(cpu) { 1352 1360 if (cpu == this_cpu) 1353 1361 continue;