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 <tr...@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.villem...@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
signature.asc
Description: PGP signature