[PATCH 4/5] test: sandbox: fix link error with do_ut_bootm if BLOBLIST=n

Simon Glass sjg at chromium.org
Fri Dec 20 18:37:12 CET 2024


Hi Evgeny,

On Tue, 17 Dec 2024 at 02:11, Evgeny Bachinin
<eabachinin at salutedevices.com> wrote:
>
>
> Hi, Simon. See below, please
>
> On Fri, Dec 06, 2024 at 08:31:22AM -0700, Simon Glass wrote:
> > Hi Evgeny,
> >
> > On Mon, 2 Dec 2024 at 06:46, Evgeny Bachinin
> > <EABachinin at salutedevices.com> wrote:
> > >
> > > Having CONFIG_OF_EMBED=y && CONFIG_BLOBLIST=n leads to the link
> > > error:
> > > ```
> > > ld: /tmp/ccwtRVty.ltrans28.ltrans.o:(.data.rel+0x4e8): undefined \
> > >                                             reference to `do_ut_bootm'
> >
> > Are you sure? I don't see that one. The bootm test should not relate
> > to bloblist.
>
>
> I've double checked - reproduced on v2024.10. There we had in
> test/Makefile:
>   ```
>   ifneq ($(CONFIG_$(SPL_)BLOBLIST),)
>   obj-$(CONFIG_$(SPL_)CMDLINE) += bootm.o
>   endif
>   ```
> So do_ut_bootm()  was not built if BLOBLIST=n
>
> We do not see "undefined reference to `do_ut_bootm'" on v2025.01-rc3
> due to this patch:
>   7f8b8c5abc2 ("bootm: test: Move test into boot")
>   It made bootm.o dependant on CONFIG_SANDBOX and independent from
>   BLOBLIST.
>
> And because aforementioned patch fixes the issue, I'm going to get rid
> of this current patch.
>
>
> > This is what I see:
> >
> > buildman  -a OF_EMBED -a ~BLOBLIST --bo sandbox
> > Building current source for 1 boards (1 thread, 32 jobs per thread)
> >    sandbox:  +   sandbox
> > +===================== WARNING ======================
> > +CONFIG_OF_EMBED is enabled. This option should only
> > +be used for debugging purposes. Please use
> > +CONFIG_OF_SEPARATE for boards in mainline.
> > +See doc/develop/devicetree/control.rst for more info.
> > +====================================================
> > +
> > +Some CONFIG adjustments did not take effect. This may be because
> > +the request CONFIGs do not exist or conflict with others.
> > +Failed adjustments:
> > +~BLOBLIST             CONFIG_BLOBLIST=y
>
> Just a side note:
> I am not familiar with buildman yet, but it seems, it can not set up
> CONFIG_BLOBLIST=n because BLOBLIST is selected by 'select'.

That's right.

>
> JFYI, I'm going to extend the patch series by new patch to make BLOBLIST
> selectable from menuconfig for sandbox via 'imply'.

OK good.

>
>
> >     0    0    1 /1              sandbox
> > Completed: 1 total built, 1 newly), duration 0:00:11, rate 0.09
> >
> >
> > > ```
> > >
> > > Fixes: fe158657a5b ("test: inconsistent bootm tests")
> > > Signed-off-by: Evgeny Bachinin <EABachinin at salutedevices.com>
> > > ---
> > >  test/cmd_ut.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/test/cmd_ut.c b/test/cmd_ut.c
> > > index 842c2c3e7f65eb9fe017fa1949eb2390be171487..a14dbf4ca5e571a872585ff11bfe7adae3f4edf3 100644
> > > --- a/test/cmd_ut.c
> > > +++ b/test/cmd_ut.c
> > > @@ -107,9 +107,9 @@ static struct cmd_tbl cmd_ut_sub[] = {
> > >  #if CONFIG_IS_ENABLED(BLOBLIST)
> > >         U_BOOT_CMD_MKENT(bloblist, CONFIG_SYS_MAXARGS, 1, do_ut_bloblist,
> > >                          "", ""),
> > > -#endif
> > >         U_BOOT_CMD_MKENT(bootm, CONFIG_SYS_MAXARGS, 1, do_ut_bootm, "", ""),
> > >  #endif
> > > +#endif
> > >  #ifdef CONFIG_CMD_ADDRMAP
> > >         U_BOOT_CMD_MKENT(addrmap, CONFIG_SYS_MAXARGS, 1, do_ut_addrmap, "", ""),
> > >  #endif
> > >
> > > --
> > > 2.34.1
> > >
> >
> > Regards,
> > SImon
> >
>
> --
> Best Regards,
> Evgeny Bachinin

Regards,
Simon


More information about the U-Boot mailing list