[bitbake-devel] [PATCH] codeparser: don't interact with the cache for subshells

Christopher Larson kergoth at gmail.com
Mon Apr 28 15:37:53 UTC 2014


On Mon, Apr 28, 2014 at 8:35 AM, Christopher Larson <kergoth at gmail.com>wrote:

> On Mon, Apr 28, 2014 at 8:31 AM, Chris Larson <kergoth at gmail.com> wrote:
>
>> On Mon, Apr 28, 2014 at 8:27 AM, Christopher Larson <kergoth at gmail.com>wrote:
>>
>>> Doing so was causing leakage between the execs of the main value and
>>> that of
>>> the subshell value, and was causing the cached subshell value to be used
>>> for
>>> the overall variable. At the least this could cause execs contamination
>>> between two variables that while differing, run the same subshell. Beyond
>>> that, it's possible we could have been using an incomplete cached value
>>> of
>>> a subshell for that of the main value.
>>>
>>> Before this, bb_codeparser.dat would change between parses with differing
>>> bbfile parse order. After, it does not change.
>>>
>>> The codeparser cache version is bumped, to ensure we don't use
>>> potentially
>>> incorrect cached values from previous runs.
>>>
>>> This should hopefully resolve the difficult-to-reproduce issues we've
>>> seen at
>>> Mentor Graphics where bitbake emits a script to run a task and misses
>>> dependent functions, resulting in 'command not found' failures. This
>>> issue has
>>> also been mentioned on the oe devel list, where someone hit a case where
>>> oe_runmake was missing from a do_install task (IIRC). Adding debug
>>> information
>>> showed that bitbake's information about the variable dependencies for
>>> this
>>> task is inaccurate in the failure cases.
>>>
>>
>> We're trying to confirm the fix, but given it's not really reproducible,
>> and only seemed
>> to be hit during automated builds, it'll be difficult to say with
>> certainty that the problem
>> is resolved. That said, I think it's clear from reading the code that
>> this is the correct
>> thing, and the previous beahvior was just an unintentional oversight when
>> the cache
>> usage was added.
>>
>
> For reference, https://gist.github.com/kergoth/11301539 was used to track
> changes to
>  bb_codeparser.dat to investigate this.
>

Sorry for yet another email on this thread, but I wanted to thank Richard
for his guidance
on this. His suggestion to look at the caching, specifically with an eye
toward file parse
order, proved to be dead on, and valuable.
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/bitbake-devel/attachments/20140428/13899878/attachment-0002.html>


More information about the bitbake-devel mailing list