[yocto] [OE-core][yocto-kernel-tools][PATCH] merge_configs.sh: fail loudly if make also fails
Bruce Ashfield
bruce.ashfield at windriver.com
Mon Aug 29 06:27:42 PDT 2016
On 2016-08-29 09:22 AM, Ioan-Adrian Ratiu wrote:
> On Mon, 29 Aug 2016, Bruce Ashfield <bruce.ashfield at windriver.com> wrote:
>> On 2016-08-29 08:07 AM, Bruce Ashfield wrote:
>>>
>>>
>>> On Mon, Aug 29, 2016 at 5:19 AM, Ioan-Adrian Ratiu <adrian.ratiu at ni.com
>>> <mailto:adrian.ratiu at ni.com>> wrote:
>>>
>>> merge_configs.sh calls make on the generated kernel config from
>>> the defconfig + fragments to fill in any missing symbols. make
>>> can fail and this can lead to nasty errors further on in the
>>> build like generating an unbootable kernel image.
>>>
>>> Check the make return code and fail loudly if non-zero.
>>>
>>>
>>> We don't want merge config to fail in a scenario like this. It is up to
>>> whatever
>>> calls merge_config to add that sort of logic. Which is what I do with
>>> the kernel
>>> audit phase of linux-yocto.
>>
>> I saw the other patch after replying here. So this is causing some sort
>> of non Kconfig related error (i.e. host contamination) ? If so, that is
>> a different scenario than I was thinking of when I wrote this.
>
> Yes, exactly.
>
>>
>> Either way, like I said in my other email, I'd like to understand why
>> this is popping up now, since I'm not seeing anything like it in my
>> builds .. with my recent changes, all that I've essentially done is
>> expose merge_config to the actual tasks, so if this is showing an error
>> I jiggled something else, or it was always around.
>
> It was always around, even before the cleanup you did in this area .
> Remember I sent you a year ago patches for this issue when you were on
> vacation and you told me you didn't need that patch?
Let me spin up a couple more builds.
I'm about to push v4.8 support, and I'd like to see if I can trigger
the same issue in my clean builds.
If I can't make it happen, my answer will still be the same :D But
If I do see this, I'll queue the patch with my series and let you
know.
Bruce
>
> These patches are a rebase on top of the current master of those from
> a year ago. This issue is around since the sysroot poisoning commit back
> in 2014.
>
>>
>> Bruce
>>
>>>
>>> If you do want to try and make it fail in a scenario like this, the
>>> patch needs to
>>> go to the linux kernel mailing list.
>>>
>>> Cheers,
>>>
>>> Bruce
>>>
>>>
>>>
>>> Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu at ni.com
>>> <mailto:adrian.ratiu at ni.com>>
>>> ---
>>> tools/merge_config.sh | 5 ++++-
>>> 1 file changed, 4 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/tools/merge_config.sh b/tools/merge_config.sh
>>> index 67d1314..5212f37 100755
>>> --- a/tools/merge_config.sh
>>> +++ b/tools/merge_config.sh
>>> @@ -152,7 +152,10 @@ fi
>>> # alldefconfig: Fills in any missing symbols with Kconfig default
>>> # allnoconfig: Fills in any missing symbols with # CONFIG_* is not set
>>> make KCONFIG_ALLCONFIG=$TMP_FILE $OUTPUT_ARG $ALLTARGET
>>> -
>>> +if [ "$?" -ne 0 ]; then
>>> + echo "Make failed to fill missing config symbols. Exit." >&2
>>> + exit 1
>>> +fi
>>>
>>>
>>> # Check all specified config values took (might have
>>> missed-dependency issues)
>>> for CFG in $(sed -n "$SED_CONFIG_EXP" $TMP_FILE); do
>>> --
>>> 2.9.3
>>>
>>>
>>>
>>>
>>> --
>>> "Thou shalt not follow the NULL pointer, for chaos and madness await
>>> thee at its end"
>>>
>>>
More information about the yocto
mailing list