CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2024/11/01 11:16:04
Modified files:
sys/arch/macppc/stand: conf.c main.c
Log message:
In macppc ofwboot, sync instruction cache before entering kernel
My PowerBook G4 had some old code in its instruction cache when it
jumped into OpenBSD's kernel. If I got unlucky with a reordered
kernel, it would trip over the old code, trap into ddb, and fail to
boot. The same kernel would boot fine on a different macppc with
different firmware. This problem is rare; I got unlucky only twice,
on 2022-04-26 and 2024-07-01.
This fix tells ofwboot to invalidate the instruction cache for the
loaded kernel before jumping there.
Adapted from NetBSD src/sys/arch/macppc/stand/ofwboot/boot.c