[PATCH v2 01/38] Makefile: Fake external blobs by default with binman

Tom Rini trini at konsulko.com
Mon Oct 10 17:36:29 CEST 2022


On Mon, Oct 10, 2022 at 09:33:59AM -0600, Simon Glass wrote:
> Hi Tom,
> 
> On Mon, 10 Oct 2022 at 09:24, Tom Rini <trini at konsulko.com> wrote:
> >
> > On Mon, Oct 10, 2022 at 09:19:39AM -0600, Simon Glass wrote:
> > > Hi Rasmus,
> > >
> > > On Mon, 10 Oct 2022 at 04:16, Rasmus Villemoes
> > > <rasmus.villemoes at prevas.dk> wrote:
> > > >
> > > > On 10/01/2022 04.13, Simon Glass wrote:
> > > > > This behaviour is necessary with boards where the binman description
> > > > > requires processing external blobs, since these may be missing.
> > > > >
> > > > > Enable it by default, so that CI is happy. Warnings indicate that a valid
> > > > > image is not produced, as with the --allow-missing option.
> > > >
> > > > I know I have talked and warned about this before, and now I was
> > > > actually bitten by it IRL.
> > > >
> > > > Can we _please_ stop doing this by default. I understand why upstream
> > > > U-Boot's CI system needs this, but it should be possible for that CI
> > > > system to set an environment variable or pass a make parameter to opt-in
> > > > to generating these fake blobs.
> > > >
> > > > Generating potentially non-functional binaries by default, and currently
> > > > without even a way to opt out of that (that I have found), is frankly
> > > > not sane. Yeah, a warning is printed, but that easily scrolls away or in
> > > > the case of automated builds is hidden away in some log file people
> > > > would only ever look at if the job failed.
> > > >
> > > > I want my/our CI to _fail hard_ when I have failed to update the Yocto
> > > > metadata to stage the necessary blobs before do_compile. And if upstream
> > > > U-Boot want to continue to have this by default, can we at the very
> > > > least get an ergonomic way to opt out (preferably a CONFIG_ option I can
> > > > set or clear in my out-of-tree defconfig files).
> > >
> > > How come it doesn't fail? Building should produce an error 101 in this
> > > case. Does it not? Please send the details if there is something
> > > wrong.
> >
> > No, it does not.  You can see this for example with:
> > $ make galileo_config
> > ...
> > $ make -sj16
> > Image 'main-section' is missing external blobs and is non-functional: intel-cmc
> > Image 'main-section' has faked external blobs and is non-functional: rmu.bin
> >
> > Some images are invalid
> > $ echo $?
> > 0
> 
> Ah OK, that is a bug, though. I suppose I normally use buildman so
> don't see it, and we have no test for it.
> 
> I'll take a look when I get the -N thing done.

Well, it's a design feature that buildman shows too.  See the series I
just posted, we've been unconditionally passing binman the flags to
always allow and fake missing binaries.

-- 
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/20221010/507e6563/attachment.sig>


More information about the U-Boot mailing list