Page MenuHomeFreeBSD

loader: BIOS loader should not build framebuffer support by default
Needs ReviewPublic

Authored by tsoome on Jun 1 2023, 11:47 AM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, May 27, 3:56 AM
Unknown Object (File)
Wed, May 22, 11:56 PM
Unknown Object (File)
Fri, May 17, 11:11 PM
Unknown Object (File)
May 2 2024, 11:02 PM
Unknown Object (File)
May 2 2024, 11:01 PM
Unknown Object (File)
May 2 2024, 9:19 PM
Unknown Object (File)
Apr 8 2024, 2:29 PM
Unknown Object (File)
Apr 7 2024, 5:35 PM
Subscribers

Details

Reviewers
manu
Summary

Since BIOS loader size is limited, we need to be careful with
including features. Lets keep framebuffer version with optional build.

To enable, one would need to add BOOT_FRAMEBUFFER_MODE=yes in src.conf.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 51827
Build 48718: arc lint + arc unit

Event Timeline

So I think this is a great next step.
I'd love gfx to be 100% optional, but there's still some interdependencies with lua and 4th that make that much harder than it needs to be.
It might also be better to move the framebuffer stuff more into vbe.c since that might allow fewer ifdefs, but I've not delved enough to know if that's really a good idea.

stand/common/gfx_fb.c
1446

Why not define FRAMEBUFFER_MODE for EFI too? Then it could be an option there. at $WORK we've had some systems get cranky with the graphics, though they all were early pre-release NDA systems that the late pre-release version fixed. Since we do serial + video, this code is bypassed anyway on our production systems and there's been a push at work to reduce our attack surface where ever possible by not even compiling in code we know we won't execute.

stand/common/gfx_fb_stub.c
109

It would be great if this file were no longer required at all.
None of this makes any sense for my kboot program.

stand/i386/libi386/vidconsole.c
899

I'd be tempted to eliminate this variable entirely in !framebuffer_mode...
But this is fine.