This function is not present on x86, but there is an x86-specific
version which is never called. This is a bug, meaning that APs are not
parked before booting.

The original weak function was added in 2012 by:
commit f30fc4de4160 ("x86: Add a default implementation for 
cleanup_before_linux()")

At later change made use of the weak function but was actually dead
code. The Fixes tag reflects that.

Add cleanup_before_linux(), making it call x86_cleanup_before_linux()

Fixes: 99a573fb326f ("x86: mp: Park CPUs before running the OS")
Signed-off-by: Simon Glass <[email protected]>
---

(no changes since v1)

 arch/x86/cpu/cpu.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/x86/cpu/cpu.c b/arch/x86/cpu/cpu.c
index c373b14df30..f756a9ebf09 100644
--- a/arch/x86/cpu/cpu.c
+++ b/arch/x86/cpu/cpu.c
@@ -80,6 +80,11 @@ int __weak x86_cleanup_before_linux(void)
        return 0;
 }
 
+int cleanup_before_linux(void)
+{
+       return x86_cleanup_before_linux();
+}
+
 int x86_init_cache(void)
 {
        enable_caches();
-- 
2.43.0

Reply via email to