On 6/27/2025 8:30 AM, Huang, Kai wrote: [...]
And I am not 100% sure whether this issue exists, since allowing CPU hotplug during kexec doesn't seem reasonable to me at least on x86, despite it is indeed enabled kernel_kexec() common code: /* * migrate_to_reboot_cpu() disables CPU hotplug assuming that * no further code needs to use CPU hotplug (which is true in * the reboot case). However, the kexec path depends on using * CPU hotplug again; so re-enable it here. */ cpu_hotplug_enable(); pr_notice("Starting new kernel\n"); machine_shutdown(); I tried to git blame to find clue but failed since the history is lost during file move/renaming etc. I suspect it is for other ARCHs.
Had a check in git history, it's related to powerpc kexec code. First, commit e8e5c2155b00 ("powerpc/kexec: Fix orphaned offline CPUs across kexec") add the code to online each present CPU. Later, commit011e4b02f1da (" powerpc, kexec: Fix "Processor X is stuck" issue during kexec from ST mode") add the code in the common code kernel_kexec() to enable hotplug to fix the stuck issue.