[gnome-continuous-yocto/gnomeostree-3.28-rocko: 4709/8267] gcc-cross: Avoid races with gcc_stash_builddir



commit 9eaf51be2d578016d24ca47fb3cd679d3da4baca
Author: Richard Purdie <richard purdie linuxfoundation org>
Date:   Sun Feb 19 06:51:57 2017 -0800

    gcc-cross: Avoid races with gcc_stash_builddir
    
    Its sad we need to do this but do_install and do_populate_sysroot appear
    to change the files in ${B} and this breaks if something works in parallel
    like gcc_stash_builddir. We've seen a few too many race errors on the
    autobuilder which appear to be from this so make things run in sequence
    deterministically for now.
    
    An example failure was this from do_populate_sysroot whilst stash_builddir was running
    in parallel:
    
    ERROR: gcc-cross-initial-arm-6.3.0-r0 do_populate_sysroot: split_and_strip_files: 'file
    /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm-lsb/build/build/tmp/work/x86_64-linux/
    gcc-cross-initial-arm/6.3.0-r0/sysroot-destdir/home/pokybuild/yocto-autobuilder/yocto-worker/
    nightly-arm-lsb/build/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/6.3.0-r0/recipe-sysroot-native/
    usr/bin/arm-poky-linux-gnueabi.gcc-cross-initial-arm/arm-poky-linux-gnueabi-gcov' failed
    
    Exception: subprocess.CalledProcessError: Command '('patchelf-uninative', '--set-interpreter',
    '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm-lsb/build/build/tmp/sysroots-uninative/
    x86_64-linux/lib/ld-linux-x86-64.so.2', '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-arm-lsb/
    build/build/tmp/work/x86_64-linux/gcc-cross-initial-arm/6.3.0-r0/sstate-build-populate_sysroot/
    recipe-sysroot-native/usr/bin/arm-poky-linux-gnueabi.gcc-cross-initial-arm/arm-poky-linux-gnueabi-gcov')' 
returned non-zero exit status 1
    
    Subprocess output:
    missing section headers
    
    (From OE-Core rev: 75b76eb08c7e344142f0326605aeb6b24e61e38e)
    
    (From OE-Core rev: 7265e99d0b4b662ca7f23d480f2845a309ac57fc)
    
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 meta/recipes-devtools/gcc/gcc-cross.inc |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/meta/recipes-devtools/gcc/gcc-cross.inc b/meta/recipes-devtools/gcc/gcc-cross.inc
index fa5cfbd..bb5f7a0 100644
--- a/meta/recipes-devtools/gcc/gcc-cross.inc
+++ b/meta/recipes-devtools/gcc/gcc-cross.inc
@@ -200,7 +200,7 @@ do_gcc_stash_builddir () {
        dest=${BUILDDIRSTASH}
        hardlinkdir . $dest
 }
-addtask do_gcc_stash_builddir after do_compile before do_build
+addtask do_gcc_stash_builddir after do_compile before do_install
 SSTATETASKS += "do_gcc_stash_builddir"
 do_gcc_stash_builddir[sstate-inputdirs] = "${BUILDDIRSTASH}"
 do_gcc_stash_builddir[sstate-outputdirs] = 
"${STAGING_DIR}-components/${BUILD_ARCH}/gcc-stashed-builddir${COMPILERINITIAL}-${TARGET_SYS}"


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]