Bug 10438 - Possible to infinite loop eSDK creation
Summary: Possible to infinite loop eSDK creation
Status: RESOLVED FIXED
Alias: None
Product: eSDK
Classification: Yocto Project Subprojects
Component: eSDK (show other bugs)
Version: 2.2
Hardware: x86 Multiple
: Medium normal
Target Milestone: 2.3
Assignee: Ross Burton
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2016-10-14 12:42 UTC by Ross Burton
Modified: 2017-12-06 17:12 UTC (History)
0 users

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 Ross Burton 2016-10-14 12:42:28 UTC
Say you have a layer that provides a class, and INHERIT+="thatclass" in local.conf.

If you add the layer to SDK_LAYERS_EXCLUDE then oe-check-sstate will infinite loop silently.  Attaching a strace reveals the error message:

read(4, "ERROR: ParseError in configuration INHERITs: Could not inherit file classes/crasher.bbclass\nERROR: ParseError in configuration INHERITs: Could not inherit file classes/crasher.bbclass\n", 52816218) = 184
read(4, "ERROR: ParseError in configuration INHERITs: Could not inherit file classes/crasher.bbclass\nERROR: ParseError in configuration INHERITs: Could not inherit file classes/crasher.bbclass\n", 52816034) = 184
read(4, "ERROR: ParseError in configuration INHERITs: Could not inherit file classes/crasher.bbclass\nERROR: ParseError in configuration INHERITs: Could not inherit file classes/crasher.bbclass\nERROR: ParseError in configuration INHERITs: Could not inherit file classes/crasher.bbclass\n", 52815850) = 276

In this case crasher.bbclass is in meta-ross, which I have to blacklist because it also contains a site.conf which breaks eSDK creation (I'll also file a bug for that).
Comment 1 Paul Eggleton 2016-10-18 03:13:42 UTC
I cannot reproduce this issue here. In my case meta-selftest is referred to in my bblayers.conf, so I added an (empty) broken.bbclass to meta-selftest then added the following to my local.conf:

------ snip ------
INHERIT += "broken"
SDK_LAYERS_EXCLUDE = "/home/paul/poky/poky/meta-selftest"
------ snip ------

When I ran bitbake -c populate_sdk_ext, I got this error:

------ snip ------
ERROR: core-image-minimal-1.0-r0 do_populate_sdk_ext: Failed to generate filtered task list for extensible SDK:

### Shell environment set up for builds. ###

You can now run 'bitbake <target>'

Common targets are:
    core-image-minimal
    core-image-sato
    meta-toolchain
    meta-ide-support

You can also run generated qemu images with a command like 'runqemu qemux86'
ERROR: bitbake failed:
ERROR: ParseError in configuration INHERITs: Could not inherit file classes/broken.bbclass
ERROR: core-image-minimal-1.0-r0 do_populate_sdk_ext: Function failed: copy_buildsystem
ERROR: Logfile of failure stored in: /home/paul/poky/poky/build/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/temp/log.do_populate_sdk_ext.31808
ERROR: Task (/home/paul/poky/poky/meta/recipes-core/images/core-image-minimal.bb:do_populate_sdk_ext) failed with exit code '1'
------ snip ------

I can only assume there must be something additional at work in your setup. Any ideas?
Comment 2 Ross Burton 2016-11-08 17:34:21 UTC
Good news is that I can't replicate either now, so some other fix must have resolved this.