|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 2/4] x86/efi: discard multiboot support for PE binary
On Fri, 12 Jun 2026 at 08:21, Jan Beulich <jbeulich@xxxxxxxx> wrote: > > On 12.06.2026 01:31, Teddy Astie wrote: > > Le 11/06/2026 à 17:33, Frediano Ziglio a écrit : > >> From: Roger Pau Monné <roger.pau@xxxxxxxxxx> > >> > >> The multiboot headers (.text.header section) are not consumed in the PE > >> binary, hence discard them in the linker script when doing a PE build. > >> > >> The multiboot and PVH entry points are not used in the PE binary, hence > >> discard them in the linker script when doing a PE build. > >> > > > > nit: it looks like both paragraph state the same thing > > This should be enough: Multiboot and PVH booting are not supported for PE, hence discards them in the linker script when doing a PE build. > >> That removes some relocations that otherwise appear due to the usage of the > >> start and __efi64_mb2_start symbols in the multiboot2 header. > >> > >> Section discarding is not done updating DISCARD_SECTIONS definition as the > >> change is specific for x86. > >> > >> No functional change intended. > >> > > > > Given that this now prevents booting using multiboot2 when using the PE > > build, this is a functional change, even though it's strongly > > discouraged (not officially supported). > > > > I would add a changelog entry to actually state this change (eventually > > reminding that this was not actually supported anyway). > > Did that actually work though? If not, I wouldn't see a need for a ChangeLog > entry. > > Jan No, multiboot for PE never worked. I agree it's not needed. Some more long explanations are in place. Multiboot headers and code was always included in the PE file. Not as ever used but because the code was common with ELF. Multiboot specifications include support for a.out and ELF (and potentially some binary loading) and all boot loaders (as far as I know) followed those specifications. Here at XenServer we attempted to extend multiboot2 to support PE however at the end we ditched for another solution (extending xen_hypervisor/xen_module in grub) as more clean and simple. The multiboot2 code was never attempted to be upstream in grub (so it was only an internal PoC) while we intend to upstream the xen_hypervisor/xen_module solution. Frediano
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |