git: 8e1a9532ce19 - stable/14 - boot1.chrp: Improve comment for the SLOF hack
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 29 May 2026 22:57:12 UTC
The branch stable/14 has been updated by dim:
URL: https://cgit.FreeBSD.org/src/commit/?id=8e1a9532ce19e14a63e15242e8558ee6d0458278
commit 8e1a9532ce19e14a63e15242e8558ee6d0458278
Author: Lexi Winter <ivy@FreeBSD.org>
AuthorDate: 2026-04-17 16:56:33 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2026-05-29 22:56:56 +0000
boot1.chrp: Improve comment for the SLOF hack
Since this original comment was written, the actual issue in SLOF
was diagnosed and documented in commit 424089a0fc, which fixed it
for loader(8). Update the comment in boot1 to be more informative
to future readers.
MFC after: 3 days
Reviewed by: jhibbits, adrian
Sponsored by: https://www.patreon.com/bsdivy
Differential Revision: https://reviews.freebsd.org/D56470
(cherry picked from commit eb0279550d52962241b4178101cd7f7d732eb682)
(cherry picked from commit 66f55b90b6bcbbf3c26b2da7f56d17052e39018f)
---
stand/powerpc/boot1.chrp/boot1.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/stand/powerpc/boot1.chrp/boot1.c b/stand/powerpc/boot1.chrp/boot1.c
index cdacb05c31ce..43a28f4f3116 100644
--- a/stand/powerpc/boot1.chrp/boot1.c
+++ b/stand/powerpc/boot1.chrp/boot1.c
@@ -100,14 +100,11 @@ ofwh_t bootdevh;
ofwh_t stdinh, stdouth;
/*
- * Note about the entry point:
+ * Our entrypoint.
*
- * For some odd reason, the first page of the load appears to have trouble
- * when entering in LE. The first five instructions decode weirdly.
- * I suspect it is some cache weirdness between the ELF headers and .text.
- *
- * Ensure we have a gap between the start of .text and the entry as a
- * workaround.
+ * A bug in the SLOF shipped with some versions of QEMU causes the first
+ * 32 bytes of .text to be wrongly byte-swapped when loading LE programs.
+ * As a workaround, we add some padding at the start of the text section.
*/
__asm(" \n\
.data \n\
@@ -116,7 +113,7 @@ stack: \n\
.space 16384 \n\
\n\
.text \n\
- /* SLOF cache hack */ \n\
+ /* SLOF workaround */ \n\
.space 4096 \n\
.globl _start \n\
_start: \n\