Bug 8575 - qemu fails to start on centos6
Summary: qemu fails to start on centos6
Status: VERIFIED WORKSFORME
Alias: None
Product: OE-Core
Classification: Build System, Metadata & Runtime
Component: core (show other bugs)
Version: 2.0
Hardware: x86 Multiple
: Medium+ major
Target Milestone: 2.0.1
Assignee: Ross Burton
QA Contact: Mihail Stanciu
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2015-10-26 14:06 UTC by Paul Eggleton
Modified: 2016-02-12 08:35 UTC (History)
3 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
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.