[U-Boot] bootefi selftest on qemu-x86_64

Bin Meng bmeng.cn at gmail.com
Wed Oct 10 00:15:08 UTC 2018


Hi Heinrich,

On Wed, Oct 10, 2018 at 7:56 AM Bin Meng <bmeng.cn at gmail.com> wrote:
>
> Hi Heinrich,
>
> On Wed, Oct 10, 2018 at 12:48 AM Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
> >
> > On 10/09/2018 11:27 AM, Bin Meng wrote:
> > > Hi Heinrich,
> > >
> > > Did you ever get 'bootefi selftest' pass on qemu-x86_64? I got:
> > >
> > > => bootefi selftest
> > > WARNING: booting without device tree
> > > lib/efi_selftest/efi_selftest.c(242):
> > > ERROR: Cannot open loaded image protocol
> > >
> > > Regards,
> > > Bin
> > >
> > Hello Bin,
> >
> > when running qemu-x86_64_defconfig with
> >
> > qemu-system-x86_64 -bios denx/u-boot.rom -machine pc-i440fx-2.5 --nographic
> >
> > it hangs in an endless loop:
> >
> > U-Boot 2018.11-rc1-00130-g0a60a81ba3 (Oct 09 2018 - 18:23:16 +0200)
> >
> > QEMU Virtual CPU version 2.5+DRAM:  128 MiB
> >
> > U-Boot SPL 2018.11-rc1-00130-g0a60a81ba3 (Oct 09 2018 - 18:23:16 +0200)
> > CPU: x86_64, vendor AMD, device 663h
> > Trying to boot from SPI
> > Jumping to 64-bit U-Boot: Note many features are missing
> >
> >
> > U-Boot 2018.11-rc1-00130-g0a60a81ba3 (Oct 09 2018 - 18:23:16 +0200)
> >
> > QEMU Virtual CPU version 2.5+DRAM:  128 MiB
> >
> > U-Boot SPL 2018.11-rc1-00130-g0a60a81ba3 (Oct 09 2018 - 18:23:16 +0200)
> > CPU: x86_64, vendor AMD, device 663h
> > Trying to boot from SPI
> > Jumping to 64-bit U-Boot: Note many features are missing
> >
> >
> > U-Boot 2018.11-rc1-00130-g0a60a81ba3 (Oct 09 2018 - 18:23:16 +0200)
> >
> > QEMU Virtual CPU version 2.5+DRAM:  128 MiB
> >
> > ....
> >
> > How did you succeed to reach the console?
> >

Forgot to mention, that I searched the ML and did see you and Ivan
Gorinov discussed running 'bootefi selftest' on qemu-x86_64 [1] before
and there was patch submitted to support "x86 64-bit setjmp/longjmp"
needed by EFI. So I assume you guys had figured it out. But my testing
shows that the bug (endless reset loop) is still there, and it is
related to compiler being used. But I thought you might get a compiler
that happened to work for you hence I asked the 'bootefi selftest'
status.

Anyway I have figured out the root cause, and please try that.

>
> It is a bug and I noticed this when testing GCC 8.1.0. Patches will be
> sent soon.
>
> > There is a doc/README.x86 but nothing on x86_64. Could you, please, add
> > the missing information in said README.x86.
> >
>
> Will do.
>
> > I could not find qemu-x86_64_defconfig in .travis.yml. Shouldn't we try
> > to run the target there too?
> >
>
> I tried this but it fails with EFI selftesting.
>
> > I am using Debian Buster:
> > gcc 8.2.0
> > qemu 2.12.0
> >

[1] https://lists.denx.de/pipermail/u-boot/2018-June/331836.html

Regards,
Bin


More information about the U-Boot mailing list