[PATCH] powerpc: Fixed the bug of duplicate copying
Jinglin Wen
jinglin.wen at shingroup.cn
Thu Jun 6 23:21:32 AEST 2024
Fixed the issue where the kernel, when booting from address 0, had
code incorrectly duplicated to address 0.
Signed-off-by: Jinglin Wen <jinglin.wen at shingroup.cn>
---
arch/powerpc/kernel/head_64.S | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S
index 4690c219bfa4..6c73551bdc50 100644
--- a/arch/powerpc/kernel/head_64.S
+++ b/arch/powerpc/kernel/head_64.S
@@ -647,7 +647,9 @@ __after_prom_start:
* Note: This process overwrites the OF exception vectors.
*/
LOAD_REG_IMMEDIATE(r3, PAGE_OFFSET)
- mr. r4,r26 /* In some cases the loader may */
+ tophys(r4,r26)
+ cmplwi cr0,r4,0 /* runtime base addr is zero */
+ mr r4,r26 /* In some cases the loader may */
beq 9f /* have already put us at zero */
li r6,0x100 /* Start offset, the first 0x100 */
/* bytes were copied earlier. */
--
2.25.1
More information about the Linuxppc-dev
mailing list