[poky] poky-image-sato-sdk failed at do_rootfs

Zhang, Jessica jessica.zhang at intel.com
Mon Jan 31 16:58:56 PST 2011


Richard Purdie wrote:
> On Mon, 2011-01-31 at 23:24 +0800, Lu, Lianhao wrote:
>> Lu, Lianhao wrote on 2011-01-30:
>>> Tian, Kevin wrote on 2011-01-30:
>>> Here is what I found using the master with the latest commit
>>> ffd12fc476d6061ba1e019a1e789cf1a2d3c82e6.
>>> 
>>> 1. set PACKAGE_CLASSES to "package_rpm package_ipk" and target
>>> machine 
>>> to "qemumips" in conf/local.conf 2. bitbake poky-image-minimal from
>>> scratch, then bitbake meta-toolchain incrementally. Both got built
>>> successfully. 
>>> 3. set PACKAGE_CLASSES to "package_ipk package_rpm"
>>> 4. bitbake poky-image-minimal incrementally, and it succeeded.
>>> 5. bitbake meta-toolchain incrementally, it failed complaining about
>>> unsatisfied dependencies to eglibc during opkg installation. See
>>> attached file "log.do_populate_sdk" for details. This failure is
>>> then reproducible every time. 
>>> 6. set PACKAGE_CLASSES back to "package_rpm package_ipk"
>>> 7. bitbake poky-image-minimal incrementally, it failed complaining
>>> about unsatisfied dependencies to eglibc during rpm installation.
>>> See 
>>> attached file "log.do_rootfs" for details. This failure is then
>>> reproducible every time. 
>>> 
>> 
>> Just as Richard said, we've confirmed that this issue was caused by a
>> race problem. We saw this issue because the libgcc's
>> do_package_write_xxx task got executed before the eglibc's do_pacakge
>> task finished. This problem might be there for some time, but somehow
>> it was not exposed until the recent commit of adding a non stamp task
>> do_populate_lic.(see the email chain named after "summary about
>> recent do_populate_sdk failures" for details).  We should add
>> dependency so that the task package_write_xxx of libgcc and
>> libstdc++ is dependent upon "virtual/libc:do_package".
>> 
>> Is there any package other than libgcc and gcc-runtime have such race
>> problem with libc? I think many packages are implicitly dependent on
>> virtual/libc, how those packages do_package_write_xxx's dependency
>> upon libc's do_package get assured?
> 
> debian.bbclass ensures that things don't package until all a package's
> dependencies have packaged:
> 
> do_package_write_ipk[rdeptask] = "do_package"
> do_package_write_deb[rdeptask] = "do_package"
> do_package_write_tar[rdeptask] = "do_package"
> do_package_write_rpm[rdeptask] = "do_package"
> 
> This doesn't work in the special case of libgcc and libc since the
> cross compiler bootstrap process confuses the dependency issues a
> lot. We need to inject some manual dependencies at that point. We
> could probably even make it RDEPENDS on libc but at this point I'm
> going to manually create these dependencies to be safe and make the
> code clearer: 
> 
>
http://git.pokylinux.org/cgit.cgi/poky/commit/?id=21f2dae46b481dbf34f6874ae8
14dcd23fc86d54

Some update with recent do_package racing condition triggered build issues.
Today, I've cherry-picked 3 related commits: Kevin's fix for rebuild,
Richard's fix for change PACKAGE_CLASSES and do_package_write* depends on
libc do_package and did the following test builds:
1. bitbake poky-image-minimal (incremental)
2. bitbake poky-image-sato-sdk (incremental)
3. switch PACKAGE_CLASSES setting, then bitbake poky-image-minimal
Everything behaved as desired so far.  Then I did
4. bitbake libgcc virtual/libc -c package -f 
5. bitbake poky-image-minimal and stumbled on the eglibc depencies issues
again, then Richard suggest me to make the following change:
http://git.pokylinux.org/cgit.cgi/poky-contrib/commit/?h=jzhang/eglibc_issue
, which solved my build issues.

Thanks,
Jessica
> 
> Cheers,
> 
> Richard
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 8455 bytes
Desc: not available
URL: <http://lists.yoctoproject.org/pipermail/poky/attachments/20110131/1eedca2a/attachment.bin>


More information about the poky mailing list