Page MenuHomeFreeBSD

loader.efi: Fix build with gcc due to pointer / int issues on 32-bit build
ClosedPublic

Authored by imp on Jun 26 2026, 7:58 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Aug 13, 3:30 AM
Unknown Object (File)
Mon, Aug 10, 2:50 PM
Unknown Object (File)
Mon, Aug 10, 2:20 PM
Unknown Object (File)
Mon, Aug 10, 10:11 AM
Unknown Object (File)
Sun, Aug 9, 4:48 AM
Unknown Object (File)
Sat, Aug 8, 5:21 PM
Unknown Object (File)
Sat, Aug 8, 10:51 AM
Unknown Object (File)
Sat, Aug 8, 7:24 AM
Subscribers

Details

Summary

Use (uintptr_t) casts to cast the EFI_PHYSICAL_ADDDRESS to a pointer.

Fixes: afee781523e4 ("loader.efi: Recognize new memdisk=<url> and memcd=<url> options")
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.Jun 26 2026, 7:58 PM
rlibby added a subscriber: rlibby.

Logic LGTM.

I guess we don't follow 80 column limit in this file?

For my education: do we know in the 32-bit environment that physical addresses assuredly are below 4 GB?

This revision is now accepted and ready to land.Jun 26 2026, 8:20 PM

Yea. I don't care about 80 columns for the boot loader. It's obsolete and makes the code ugly. I usually wrap around 100 chars..

For my education: do we know in the 32-bit environment that physical addresses assuredly are below 4 GB?

Yes. There's only 32-bits, it necessarily has to be below 4GB and has other limits.