[poky] strange libgcc build failure in autobuilder
Richard Purdie
richard.purdie at linuxfoundation.org
Wed Jan 19 02:42:18 PST 2011
On Wed, 2011-01-19 at 10:13 +0000, Richard Purdie wrote:
> On Wed, 2011-01-19 at 17:30 +0800, Cui, Dexuan wrote:
> > I saw some libgcc(the new recipe I added days ago) failure that I can't reproduce locally.
> > e.g., "qemux86 poky-image-sdk failed": http://autobuilder.pokylinux.org:8010/builders/nightly-internal-incremental/builds/16/steps/shell_5/logs/stdio
> >
> > libgcc's do_package failed:
> > ERROR: Error executing a python function in /builds2/pokybuilds/nightly-internal/build/meta/recipes-devtools/gcc/libgcc_4.5.1.bb:
> > IOError: [Errno 2] No such file or directory: '/builds2/pokybuilds/nightly-internal/build/build/tmp/sysroots/i586-poky-linux/shlibs/cairo-perf-utils.list'
> >
> > It's odd -- why cario-perf-utils.list is involved...
>
> I've seen these errors before, they happen when one process
> moves/deletes files in the shlibs directory while another is accessing
> them.
>
> In package_do_shlibs there is a lock to guard against it:
>
> lf = bb.utils.lockfile(bb.data.expand("${PACKAGELOCK}", d))
>
> so its as if something is failing with the lock, or accessing those
> files without holding the lock...
In particular, this build was an incremental, and there were do_setscene
calls which were uninstalling sstate data from the sysroots running at
the same time libgcc was packaging.
There is a missing lock in setscene's uninstall which probably needs to
take PACKAGELOCK. We could really do with some kind of read/write lock
here since multiple readers are desirable and its a potential
performance bottleneck...
Cheers,
Richard
More information about the poky
mailing list