Christophe,

On 2/14/20 1:35 PM, Christophe Leroy wrote:
--- a/arch/powerpc/kernel/head_32.S
+++ b/arch/powerpc/kernel/head_32.S
@@ -270,6 +270,9 @@ __secondary_hold_acknowledge:
   * pointer when we take an exception from supervisor mode.)
   *    -- paulus.
   */
+#ifdef CONFIG_PPC_CHRP
+1:    b    machine_check_in_rtas
+#endif
      . = 0x200
      DO_KVM  0x200
  MachineCheck:
@@ -290,12 +293,9 @@ MachineCheck:
  7:    EXCEPTION_PROLOG_2
      addi    r3,r1,STACK_FRAME_OVERHEAD
  #ifdef CONFIG_PPC_CHRP
-    bne    cr1,1f
+    bne    cr1,1b
  #endif
      EXC_XFER_STD(0x200, machine_check_exception)
-#ifdef CONFIG_PPC_CHRP
-1:    b    machine_check_in_rtas
-#endif

  /* Data access exception. */
      . = 0x300

With the above changes and all the other patches applied, the machine finally boots. It is so bloody slow that it takes a long time to do anything, but you finally got all the places that needed patches. I really lost track of how many bugs were fixed in the process, but I can now put that old box aside until time for v5.7.0-rc1. As you can tell, it only gets used to verify that PPC32 is working on real G4 hardware. It has no real value for any other function.

Thanks for the help,

Larry

Reply via email to