Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Denys Dmytriyenko <denis@denix.org>
To: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Denys Dmytriyenko <denys@ti.com>,
	"openembedded-core@lists.openembedded.org"
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH] u-boot: Upgrade from 2019.01 to 2019.04
Date: Thu, 11 Apr 2019 13:26:54 -0400	[thread overview]
Message-ID: <20190411172654.GO2112@denix.org> (raw)
In-Reply-To: <eac980cd94a8d408a02f143f8ee9f2723655e819.camel@linuxfoundation.org>

On Thu, Apr 11, 2019 at 09:27:32AM +0100, Richard Purdie wrote:
> On Wed, 2019-04-10 at 17:23 +0000, Alistair Francis wrote:
> > Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
> > ---
> >  meta/recipes-bsp/u-boot/u-boot-common.inc                       | 2
> > +-
> >  .../{u-boot-fw-utils_2019.01.bb => u-boot-fw-utils_2019.04.bb}  | 0
> >  .../u-boot/{u-boot-tools_2019.01.bb => u-boot-tools_2019.04.bb} | 0
> >  .../recipes-bsp/u-boot/{u-boot_2019.01.bb => u-boot_2019.04.bb} | 0
> >  4 files changed, 1 insertion(+), 1 deletion(-)
> >  rename meta/recipes-bsp/u-boot/{u-boot-fw-utils_2019.01.bb => u-
> > boot-fw-utils_2019.04.bb} (100%)
> >  rename meta/recipes-bsp/u-boot/{u-boot-tools_2019.01.bb => u-boot-
> > tools_2019.04.bb} (100%)
> >  rename meta/recipes-bsp/u-boot/{u-boot_2019.01.bb => u-
> > boot_2019.04.bb} (100%)
> 
> Breaks beaglebone-yocto:
> 
> https://autobuilder.yoctoproject.org/typhoon/#/builders/65/builds/490
> https://autobuilder.yoctoproject.org/typhoon/#/builders/46/builds/489

Richard,

This is quite interesting and surprisingly timely for me! Let me explain.

Both of the above errors are not really specific to beaglebone or even u-boot. 
In both cases, the failure is this:

| ERROR: _exec_cmd: install -m 0644 -D /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/deploy/images/beaglebone-yocto/u-boot.img /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/core-image-sato-sdk-ptest/1.0-r0/deploy-core-image-sato-sdk-ptest-image-complete/core-image-sato-sdk-ptest-beaglebone-yocto-20190410232147/tmp.wic.4xf3vi9f/boot.1/u-boot.img returned '1' instead of 0
| output: install: cannot stat '/home/pokybuild/yocto-worker/beaglebone/build/build/tmp/deploy/images/beaglebone-yocto/u-boot.img': No such file or directory
| ERROR: Function failed: do_image_wic (log file is located at /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/core-image-sato-sdk-ptest/1.0-r0/temp/log.do_image_wic.41960)

I recently received exactly the same error report internally and have been 
investigating it. Though it is against Thud, for a different platform and with 
our own u-boot from meta-ti.

It seems to be a race condition - wic is trying to assemble an image when 
u-boot binary is not yet ready. Usually on subsequent rebuilds when u-boot 
needs to be rebuilt, but everything else is already available.

Packaging for wic is set with IMAGE_BOOT_FILES = "u-boot.img", but the build 
dependency is special, as u-boot is not part of rootfs and is being set by 
EXTRA_IMAGEDEPENDS = "u-boot":
http://git.yoctoproject.org/cgit/cgit.cgi/meta-yocto/tree/meta-yocto-bsp/conf/machine/beaglebone-yocto.conf

Since wic jumps right into packaging u-boot.img and doesn't wait for it to 
finish building/installing/deploying, it seems EXTRA_IMAGEDEPENDS is broken. 
But it used to work prior to Thud. It appears it may have been broken here:
https://git.openembedded.org/openembedded-core/commit/?id=b54cdaea7844ee3bf0c39eb97cc7c4c17ed5818c

While the above commit deals with licenses and manifests, removal of these 
lines is not clear:

-    extra_depends = d.getVar("EXTRA_IMAGEDEPENDS")
-    boot_depends = get_boot_dependencies(d)
-    depends.extend(extra_depends.split())
-    depends.extend(boot_depends)
-    depends = list(set(depends))

Could it have affected boot dependencies and EXTRA_IMAGEDEPENDS behavior? 
Please let me know if you need any more details. Thanks.

-- 
Denys


  reply	other threads:[~2019-04-11 17:26 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-10 17:23 [PATCH] u-boot: Upgrade from 2019.01 to 2019.04 Alistair Francis
2019-04-11  8:27 ` Richard Purdie
2019-04-11 17:26   ` Denys Dmytriyenko [this message]
2019-04-11 17:32     ` Alistair Francis
2019-04-11 18:11       ` Denys Dmytriyenko
2019-04-11 18:29         ` Alistair Francis
2019-04-12 21:11     ` Denys Dmytriyenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190411172654.GO2112@denix.org \
    --to=denis@denix.org \
    --cc=denys@ti.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox