HomeFreeBSD

powerpc64: Fix boot on virtual-mode OF (PowerMac G5)

Description

powerpc64: Fix boot on virtual-mode OF (PowerMac G5)

In 78599c32efed3247d165302a1fbe8d9203e38974, CFI endproc decoration was
added to locore64.S. However, it missed the subtle detail that
restartkernel_virtual() falls through to restartkernel(). This was
causing boot failure on PowerMac G5, as it tried to execute the
epilogue as code.

Fix this by branching to __restartkernel() instead of intentionally
running off the end of the function.

While here, add some additional notes on how the virtual mode restart
works.

Approved by: re (gjb)

(cherry picked from commit d26f2a50ff48dacd38ba358d658882d51f7bdbc4)
(cherry picked from commit 187492ef639fecde6c122838cfff0a75d8b94608)

Details

Provenance
bdragonAuthored on Feb 7 2021, 10:05 PM
Parents
rGc41fef90a7d0: bc: Correct mis-merge of contrib/bc on upgrade to version 3.2.6
Branches
Unknown
Tags
Unknown