summaryrefslogtreecommitdiffstats
path: root/scripts/Makefile.kasan
diff options
context:
space:
mode:
authorBrian Gerst <brgerst@gmail.com>2023-03-16 22:21:03 +0000
committerThomas Gleixner <tglx@linutronix.de>2023-03-21 13:35:53 +0100
commit3adee777ad0d328e76ca9015cb7924134a992e81 (patch)
treebee9a622486c7759ff8c4325d982143376fd67cb /scripts/Makefile.kasan
parentcefad862f23874174136a48d91cb4a6ac3b1c5ce (diff)
downloadlinux-stable-3adee777ad0d328e76ca9015cb7924134a992e81.tar.gz
linux-stable-3adee777ad0d328e76ca9015cb7924134a992e81.tar.bz2
linux-stable-3adee777ad0d328e76ca9015cb7924134a992e81.zip
x86/smpboot: Remove initial_stack on 64-bit
In order to facilitate parallel startup, start to eliminate some of the global variables passing information to CPUs in the startup path. However, start by introducing one more: smpboot_control. For now this merely holds the CPU# of the CPU which is coming up. Each CPU can then find its own per-cpu data, and everything else it needs can be found from there, allowing the other global variables to be removed. First to be removed is initial_stack. Each CPU can load %rsp from its current_task->thread.sp instead. That is already set up with the correct idle thread for APs. Set up the .sp field in INIT_THREAD on x86 so that the BSP also finds a suitable stack pointer in the static per-cpu data when coming up on first boot. On resume from S3, the CPU needs a temporary stack because its idle task is already active. Instead of setting initial_stack, the sleep code can simply set its own current->thread.sp to point to the temporary stack. Nobody else cares about ->thread.sp for a thread which is currently on a CPU, because the true value is actually in the %rsp register. Which is restored with the rest of the CPU context in do_suspend_lowlevel(). Signed-off-by: Brian Gerst <brgerst@gmail.com> Signed-off-by: David Woodhouse <dwmw@amazon.co.uk> Signed-off-by: Usama Arif <usama.arif@bytedance.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Tested-by: Usama Arif <usama.arif@bytedance.com> Tested-by: Guilherme G. Piccoli <gpiccoli@igalia.com> Reviewed-by: David Woodhouse <dwmw@amazon.co.uk> Link: https://lore.kernel.org/r/20230316222109.1940300-7-usama.arif@bytedance.com
Diffstat (limited to 'scripts/Makefile.kasan')
0 files changed, 0 insertions, 0 deletions