[PATCH 0/8] efi_loader: Complete the bootflow_efi() test

Tom Rini trini at konsulko.com
Sat Jan 18 18:03:40 CET 2025


On Fri, Jan 17, 2025 at 08:35:42PM -0800, Simon Glass wrote:
> Hi Tom,
> 
> On Mon, 13 Jan 2025 at 13:20, Tom Rini <trini at konsulko.com> wrote:
> >
> > On Mon, Jan 13, 2025 at 12:01:36PM -0700, Simon Glass wrote:
[snip]
> > > > Sure. test/cmd/hash.c::dm_test_cmd_hash_md5 fails randomly, in maybe 1
> > > > out of 100 runs, via pytest, in sandbox. Not via "./u-boot -T -c 'ut
> dm
> > > > dm_test_cmd_hash_md5'" however (I stopped checking after 1000
> > > > iterations). I was iterating over "and built with clang" but I think
> it
> > > > happens with gcc too, from the actual failures in CI. And you can use
> > > > "-k ut" to limit to just what's matched there, so it's a quicker
> > > > iteration.
> > >
> > > Hmmm do you have a link? It's hard to imagine what it is, but perhaps
> > > a dependency on a previous test.
> >
> > Sure:
> > https://source.denx.de/u-boot/u-boot/-/jobs/993200#L286
> >
> > My current gut feeling is that we've got some section overlap issue
> > somewhere. And, FWIW, if I turn off EFI_LOADER I still see it. And if
> > you use the same binary it won't always fail.
> 
> The only way I think the hash command can return CMD_RET_USAGE is if there
> are not enough arguments.
> 
> The only way that can happen with this code:
> 
> ut_assertok(run_command("hash md5 $loadaddr 0", 0));
> 
> is if loadaddr is undefined.
> 
> But (like you, I suspect) I cannot find how that could be.
> 
> In fact, I can't even build with clang:
> 
> $ buildman -O clang-17 --bo sandbox -w -o /tmp/b/sandbox-clang
> Building current source for 1 boards (1 thread, 32 jobs per thread)
>    sandbox:  +   sandbox
> +/usr/bin/llvm-ar: error: arch/sandbox/cpu/built-in.o: Opaque pointers are
> only supported in -opaque-pointers mode (Producer: 'LLVM17.0.6' Reader:
> 'LLVM 14.0.0')
> +make[2]: *** [scripts/Makefile.build:333: arch/sandbox/cpu/built-in.o]
> Error 1
> +make[1]: *** [Makefile:1906: arch/sandbox/cpu] Error 2
> +make: *** [Makefile:177: sub-make] Error 2
>     0    0    1 /1              sandbox

This command works fine for me in the CI container, so I don't know
what's going on with your local installation. I've also seen CI fail
enough times now with just regular sandbox that I don't _think_ it's a
compiler specific issue. Thanks for looking in to this more!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20250118/6a993f5f/attachment.sig>


More information about the U-Boot mailing list