Bug 8575

Summary: qemu fails to start on centos6
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Paul Eggleton <bluelightning>
Component: coreAssignee: Ross Burton <ross.burton>
Status: VERIFIED WORKSFORME QA Contact: Mihail Stanciu <stanciux.mihail>
Severity: major    
Priority: Medium+ CC: bogdanx.a.voiculescu, meta.mr.watcher, meta.watcher
Version: 2.0   
Target Milestone: 2.0.1   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Paul Eggleton 2015-10-26 14:06:12 UTC
All of the oe-selftest tests that use qemurunner failed in the last master-next build. From https://autobuilder.yoctoproject.org/main/builders/nightly-oe-selftest/builds/234/steps/Running%20oe-selftest/logs/stdio :


======================================================================
ERROR: test_devtool_deploy_target (oeqa.selftest.devtool.DevtoolTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/utils/decorators.py", line 106, in wrapped_f
    return func(*args)
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/selftest/devtool.py", line 923, in test_devtool_deploy_target
    with runqemu(testimage, self) as qemu:
  File "/opt/poky/1.8+snapshot/sysroots/x86_64-pokysdk-linux/usr/lib/python2.7/contextlib.py", line 17, in __enter__
    return self.gen.next()
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/utils/commands.py", line 214, in runqemu
    qemu.start()
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/targetcontrol.py", line 180, in start
    if self.runner.start(params):
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/utils/qemurunner.py", line 177, in start
    time.sleep(1)
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/utils/qemurunner.py", line 92, in handleSIGCHLD
    raise SystemExit
SystemExit
------------------------------------------


If you look into the qemurunner log you find the following root cause:

/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/sysroots/x86_64-linux/usr/bin/qemu-system-x86_64: symbol lookup error: /usr/lib64/libX11.so: undefined symbol: xcb_wait_for_reply64

Sounds like the libX11 (or libxcb?) that qemu-native was built against is different from the one it's running against...
Comment 1 Paul Eggleton 2015-10-26 14:11:53 UTC
I've also filed bug 8576 to cover us not being able to see the proper error here.
Comment 2 Ross Burton 2015-11-17 11:34:03 UTC
My guess is that it built against the new x11/xcb in the sysroot which was later cleaned.  Great.
Comment 3 Ross Burton 2016-02-03 17:16:35 UTC
So I've spend an hour poking at jethro and master in an attempt to replicate this and I can't seem to do it by hand, even less so inside a selftest.

My best guess was a devtool reset wiping bits of the sysroot away, but that's never done against the native sysroot.  The dependencies in qemu are fine so something must be going into the sysroot and breaking things.

From what I can tell this hasn't happened again so maybe it was a transient failure with some broken tests?

Reluctantly closing, we can re-open if it happens again.
Comment 4 Mihail Stanciu 2016-02-12 08:35:02 UTC
Hasn't happened again for 2.0.1_rc6.
Marking verified.