grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Severe bug in grub-2.12-for-windows


From: Glenn Washburn
Subject: Re: Severe bug in grub-2.12-for-windows
Date: Sun, 31 Dec 2023 21:18:26 -0600

On Sun, 31 Dec 2023 13:10:47 -0500
Dave Pickens <drummer@pobox.com> wrote:

> Hi,
> 
> I am the author of Grub2Win.
> 
> In order to generate kernels from a Windows environment, I rely heavily on 
> the Windows version (grub-2.12-for-windows)
> 
> In testing, I have discovered that the EFI 64 bit kernel generated by the 
> grub-mkimage.exe module will not boot.
> The EFI 32 bit and non EFI i386-pc kernels work well and boot with no problem.
> 
> I have submitted bug report #65072 with details, a screenshot and the script 
> used to generate the kernels.
> The text of the bug report is shown below.
> 
> Any help from you would be greatly appreciated as I would like to include the 
> 2.12 kernels in my software soon.
> 
> Many thanks,
> 
> Dave Pickens
> 
> 
> **********************************************************************************************
> 
> 
> I am testing the newly released version 2.12.
> 
> Using grub-mkimage.exe to create a bootable 64 bit EFI kernel.
> 
> When the kernel is loaded at boot time it gives message
> 
> symbol '_stack_chk_guard' not found

I see in your output that grub-mkimage.exe is relocating the symbol
"_stack_chk_guard", but I'm not sure why. GRUB uses a similarly named
symbol that has two underscores in front, not one. So I'm guessing that
something is eating the first underscore, probably in some name
mangling that only happens on Windows. I see that there are other
double underscore symbols that showup with one underscore. I wonder if
this has to do with the compiler used to build the kernel.img.

Daniel how is that executable built? Compiling on Windows or cross
compiling? What compiler is used?

I don't develop on Windows so I don't know how much more help I'll be
here.

> 
> See the attached screenshot.
> Then the kernel aborts.
> 
> I was extremely careful when generating the kernel to ensure that the 
> matching libraries were used by the grub-mkimage command.
> The libraries and command are all in the same directory, so it is very 
> unlikely that a mismatch occurred.
> 
> This bug renders grub-2.12-for-windows useless.
> The kernel will not boot.
> 
> I have also attached the Windows .bat script I used to generate the kernels.
> 
> Note: The 32 bit i386-efi and non EFI i386-pc kernels work fine.
> The problem is strictly with the 64 bit x86_64-efi kernel.

This I find surprising.

Glenn




reply via email to

[Prev in Thread] Current Thread [Next in Thread]