Page MenuHomeFreeBSD

Move loader.efi and boot1.efi to be under sys/boot/efi
ClosedPublic

Authored by andrew on Mar 28 2015, 5:10 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Nov 21, 8:35 AM
Unknown Object (File)
Sat, Nov 16, 1:55 AM
Unknown Object (File)
Thu, Nov 7, 7:35 PM
Unknown Object (File)
Thu, Nov 7, 4:24 AM
Unknown Object (File)
Tue, Nov 5, 4:44 AM
Unknown Object (File)
Mon, Nov 4, 2:20 PM
Unknown Object (File)
Mon, Oct 28, 11:13 PM
Unknown Object (File)
Mon, Oct 28, 12:10 AM
Subscribers

Details

Summary

It's mostly MI, with a few MD parts. I've attempted to split out the MD
parts of loader, but more work will be needed.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

andrew retitled this revision from to Move loader.efi and boot1.efi to be under sys/boot/efi.
andrew updated this object.
andrew edited the test plan for this revision. (Show Details)
andrew added a reviewer: emaste.
imp added a reviewer: imp.

One might quibble over the directory name, but rather than do that, I'm going to say "go" on this, modulo the one comment above.

This revision is now accepted and ready to land.Mar 28 2015, 5:14 PM

helps to actually have the comment ready when you hit submit: the FDT stuff should be done in a different commit, and I didn't review it at all.

sys/boot/efi/loader/bootinfo.c
330 ↗(On Diff #4479)

The LOADER_FDT_SUPPORT looks wholly new, and should be in a separate commit.

emaste edited edge metadata.

Overall looks good and I'm happy to see this go in. Let me know if you need more testing on amd64 still.

sys/boot/Makefile.amd64
12 ↗(On Diff #4479)

Looks good; you could commit this little change separately first if you want.

andrew edited edge metadata.

Remove the fdt bits, and a few other items that should be reviewed separately

This revision now requires review to proceed.Mar 28 2015, 6:00 PM

amd64 tinderbox failed with:

--- lib.depend__D ---
--- .depend ---
rm -f .depend
CC='cc  ' mkdep -f .depend -a     -std=gnu99   /scratch/tmp/emaste/freebsd/contrib/netbsd-tests/lib/libpthread/dlopen/dso/h_pthread_dlopen.c
--- sys.depend__D ---
--- x86 ---
ln -sf /scratch/tmp/emaste/freebsd/sys/boot/efi/boot1/../../../x86/include x86
make[8]: make[8]: don't know how to make reloc.c. Stop
make[8]: stopped in /scratch/tmp/emaste/freebsd/sys/boot/efi/boot1
--- sbin.depend__D ---
--- .depend ---
--- sys.depend__D ---
andrew edited edge metadata.

Re-add the arch dependent files

sys/boot/efi/Makefile
3 ↗(On Diff #4499)

We'll need to limit loader/boot1 to amd64 only for now, until the other MD parts come in

sys/boot/efi/boot1/Makefile
16 ↗(On Diff #4538)

Comment from D1545: put start.S first

33 ↗(On Diff #4538)

Comment from D1545:

-Wl,-znocombreloc stops boot1.efi from working on arm64, it would be nice if it was on a separate line, e.g. LDFLAGS+= -Wl,-znocombreloc. This would simplify when we pull this change across.

sys/boot/efi/boot1/Makefile
16 ↗(On Diff #4538)

I'm thinking on reworking the arm64 code to put the PE+ header in a new section to make sure it's first.

emaste edited edge metadata.

I successfully tested the patch from your git branch (95153443bea0538431118b1ceaffdd308aa3965e)

This revision is now accepted and ready to land.Mar 31 2015, 9:39 PM
andrew updated this revision to Diff 4563.

Closed by commit rS280950 (authored by @andrew).