Page MenuHomeFreeBSD

isoboot - boot an ISO image that happens to be on something that isn't a CDROM under BIOS
ClosedPublic

Authored by benno on Mar 30 2018, 11:01 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Apr 17, 9:15 AM
Unknown Object (File)
Thu, Apr 11, 6:17 PM
Unknown Object (File)
Thu, Apr 11, 6:15 PM
Unknown Object (File)
Thu, Apr 11, 6:14 PM
Unknown Object (File)
Thu, Apr 11, 4:02 PM
Unknown Object (File)
Thu, Apr 11, 3:59 PM
Unknown Object (File)
Thu, Apr 11, 3:19 PM
Unknown Object (File)
Thu, Mar 28, 8:22 PM
Subscribers

Details

Summary

This is a heavily streamlined version of gptboot that instead of looking for a UFS filesystem instead looks for an ISO image residing on the same device it got booted from.

Test Plan

Constructed a PMBR/GPT image with this in a freebsd-boot partition and stuck that in front of an ISO image and booted it.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 15908

Event Timeline

bcr added a subscriber: bcr.

OK from manpages. Thanks for working on this!

This revision is now accepted and ready to land.Mar 31 2018, 10:48 AM

Fix copyright on cd9660read.c.

When I first wrote this code it was inside a version of boot2.c, then got transplanted to a version of gptboot.c and then split out into cd9660read.c and so it ended up with gptboot.c's copyright when it should've had cd9660.c's.

This revision now requires review to proceed.Mar 31 2018, 3:13 PM

I'm a little confused. I think I detect vestiges of time when this used boot2, which it no longer does. What's the current design?

stand/i386/isoboot/Makefile
23

shouldn't this be isoboot? Is it even used?

68

I thought it was fine with them finally.

stand/i386/isoboot/isoboot.c
82

Are these still in use? I thought we killed them in the 4.x time frame.

212

This is silly.

Update based on feedback from imp.

benno added inline comments.
stand/i386/isoboot/Makefile
23

Yes, it's used. I've updated it.

68

Seems to build with this gone.

stand/i386/isoboot/isoboot.c
82

They're still present in gptboot. I've left them for now.

212

Maybe but we get a missing prototype error if it's not there. I've moved up with the other prototypes.

benno marked 3 inline comments as done.Apr 2 2018, 3:20 PM
stand/i386/isoboot/Makefile
44

Is there a size limit for isoboot? If so, we should enforce it here...

stand/i386/isoboot/isoboot.c
62

Won't block this review, but we need to kill the umpteen million copies of this.

124

Seems like this should be common in libi386...

317

Do you need this? This isn't boot2 as well, so at least you should update the comment :)

425

Seems like this should be common too, but that may be beyond the scope here...

benno marked 2 inline comments as done.

Address review comments from imp.

nits for posterity...

stand/i386/isoboot/isoboot.c
3

You're not adding your own copyright?

82

OK. They are passed into the boot loader for really old kernels loaded directly from the boot loader... Should put this on some list to look at retiring...

This revision is now accepted and ready to land.Apr 5 2018, 6:12 PM
This revision was automatically updated to reflect the committed changes.
stand/i386/isoboot/isoboot.c
3

No, not enough changes to warrant it.