[oe] Simultaneous build of two intree packages

Gary Thomas gary at mlbassoc.com
Mon May 7 21:08:29 UTC 2012


On 2012-05-07 15:01, Radek Dostal wrote:
> On Mon, 2012-05-07 at 08:46 -0700, Khem Raj wrote:
>>> usually it crashes during "ln -sf target dest" which is executed
>>> simultaneously with same parameters for both builds. There are other
>>> issues as well in addition to this ln issue.
>>
>> This is confusing why does this happen at all
>
> Because ln -sf first do symlink(1) unlink(2) and symlink(3) again. In
> case link is created by another process between 2 and 3 than ln fails.
>
> It is quite well described here:
> http://rcrowley.org/2010/01/06/things-unix-can-do-atomically.html
>
> I was also able to verify my finding by running two ln -sf in two for
> loops in two different terminals and they were failing constantly.
>
> So any idea on implementing locks/mutexes inside OE. If somebody can
> point me in the right direction I should be able to implement and feed
> back.

I think that your recipes are not well behaved - two recipes probably
should not be creating the same file in such a way.

Can you post the recipes, or at least the code snippets that break?

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------




More information about the Openembedded-devel mailing list