Page MenuHomeFreeBSD

stand: Go back to a.out format for /boot/loader
ClosedPublic

Authored by imp on Aug 11 2022, 5:26 PM.
Tags
None
Referenced Files
Unknown Object (File)
Feb 20 2024, 3:10 AM
Unknown Object (File)
Dec 20 2023, 5:42 AM
Unknown Object (File)
Nov 28 2023, 9:00 PM
Unknown Object (File)
Nov 28 2023, 7:51 PM
Unknown Object (File)
Nov 28 2023, 8:09 AM
Unknown Object (File)
Nov 26 2023, 8:53 AM
Unknown Object (File)
Nov 26 2023, 8:09 AM
Unknown Object (File)
Nov 26 2023, 5:53 AM
Subscribers

Details

Summary

Turns out there's two hidden a.out dependencies. pxeldr.S assumes it has
access to the a.out header from /boot/loader and cdboot.S assumes that
/boot/loader is also a.out and doesn't use boot2.

So, go back to making a.out files for these and adjust the size checks
to use ls, but we only need to check loader.bin. Trim the size we check
against by 2,000. The difference in size between loader and laoder.bin
is about 3000 bytes, but clang15 produces binaries that are a smidge
bigger so we need to relax the check just a little and accept some
additional risk for the moment.

Add some comments to loader's Makefile about this.

Sponsored by: Netflix

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

imp requested review of this revision.Aug 11 2022, 5:26 PM
imp added reviewers: jhb, kevans, tsoome.
This revision is now accepted and ready to land.Aug 11 2022, 6:43 PM

Clang15 failed on loader at the original 510000 by just over 900 bytes, so assuming 508000 represents about 1k more we should be just barely OK

This revision was automatically updated to reflect the committed changes.