[OE-core] [PATCH] uboot-sign: avoid a circular dependency with the task to assemble a fitimage
André Draszik
git at andred.net
Wed Jan 17 10:20:22 UTC 2018
Hi,
On Wed, 2018-01-17 at 10:23 +0100, Thomas Perrot wrote:
> Between do_concat_dtb and do_assemble_fitimage when UBOOT_SIGN_ENABLE is
> active:
I have the same question as previously - have you actually tried
UBOOT_SIGN_ENABLE without your patch on master or rocko? I am using it
without any problems or extra patches.
So if you're still seeing problems, can you please clarify how to reproduce
this?
>
> Dependency loop #1 found:
> do_concat_dtb (dependent Tasks ['linux-
> yocto_4.10.bb:do_assemble_fitimage'])
> do_install (dependent Tasks ['pseudo_1.8.2.bb:do_populate_sysroot', 'u-
> boot_2017.01.bb:do_compile', 'u-boot_2017.01.bb:do_concat_dtb'])
> do_deploy (dependent Tasks ['u-boot_2017.01.bb:do_deploy_dtb', 'u-
> boot_2017.01.bb:do_install'])
> do_assemble_fitimage (dependent Tasks ['linux-yocto_4.10.bb:do_compile',
> 'u-boot_2017.01.bb:do_deploy'])
As mentioned previously, exactly this dependency loop was fixed in commit
7da4c0a56eb2 in oe-core (commit d434e8086ae9 in poky). How are you still
triggering the dependency loop?
>
> Signed-off-by: Thomas Perrot <thomas.perrot at sigfox.com>
> ---
> meta/classes/uboot-sign.bbclass | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/meta/classes/uboot-sign.bbclass b/meta/classes/uboot-
> sign.bbclass
> index 8ee904e7df..f36f9dfda1 100644
> --- a/meta/classes/uboot-sign.bbclass
> +++ b/meta/classes/uboot-sign.bbclass
> @@ -74,7 +74,7 @@ do_concat_dtb () {
> cd ${DEPLOYDIR}
> cat ${UBOOT_NODTB_IMAGE} ${UBOOT_DTB_IMAGE} | tee
> ${B}/${UBOOT_BINARY} > ${UBOOT_IMAGE}
> else
> - bbwarn "Failure while adding public key to u-boot
> binary. Verified boot won't be available."
> + bbfatal "Failure while adding public key to u-
> boot binary. Verified boot won't be available."
- this change is not mentioned in the commit message
- this is a good change, but it should be a separate commit, as it's
independent of any dependency loop fixes
> fi
> fi
> }
> @@ -82,7 +82,6 @@ do_concat_dtb () {
> python () {
> uboot_pn = d.getVar('PREFERRED_PROVIDER_u-boot') or 'u-boot'
> if d.getVar('UBOOT_SIGN_ENABLE') == '1' and d.getVar('PN') ==
> uboot_pn:
> - kernel_pn = d.getVar('PREFERRED_PROVIDER_virtual/kernel')
>
> # u-boot.dtb and u-boot-nodtb.bin are deployed _before_
> do_deploy
> # Thus, do_deploy_setscene will also populate them in
> DEPLOY_IMAGE_DIR
> @@ -91,5 +90,5 @@ python () {
> # do_concat_dtb is scheduled _before_ do_install as it
> overwrite the
> # u-boot.bin in both DEPLOYDIR and DEPLOY_IMAGE_DIR.
> bb.build.addtask('do_concat_dtb', 'do_install', None, d)
> - d.appendVarFlag('do_concat_dtb', 'depends', '
> %s:do_assemble_fitimage' % kernel_pn)
> + d.appendVarFlag('do_concat_dtb', 'depends', '
> %s:do_deploy_dtb' % uboot_pn)
Please also update the documentation on top of the file.
Cheers,
Andre'
More information about the Openembedded-core
mailing list