[OE-core] [PATCH 1/1] image.bbclass:specify the order of do_rootfs

Richard Purdie richard.purdie at linuxfoundation.org
Mon Jan 7 14:06:35 UTC 2013


On Sat, 2013-01-05 at 08:45 +0800, Hongxu Jia wrote:
> The task of do_populate_lic use "bb.build.exec_func" to execute shell function
> "sstate_create_package", and "bb.build.exec_func" use ${B} as default dir to cd
> and execute the shell function. At this place, B = "${WORKDIR}/${BPN}-${PV}/",
> and "${WORKDIR}/${BPN}-${PV}/" is removed by task do_rootfs.
> 
> When we use more than one bitabke to run tasks, there is a chance that do_rootfs
> and do_populate_lic are being executed at the same time. So we should explicity
> specify the order of do_populate_lic and do_rootfs to let "${WORKDIR}/${BPN}-${PV}/"
> could be correctly used and removed.
> 
> [YOCTO #3674]
> 
> Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
> ---
>  meta/classes/image.bbclass |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
> index d3a416d..c2dab36 100644
> --- a/meta/classes/image.bbclass
> +++ b/meta/classes/image.bbclass
> @@ -472,4 +472,4 @@ do_package_write_ipk[noexec] = "1"
>  do_package_write_deb[noexec] = "1"
>  do_package_write_rpm[noexec] = "1"
>  
> -addtask rootfs before do_build
> +addtask rootfs before do_build after do_populate_lic

Lets not add pointless ordering constraints.

sstate_create_package[dirs] = "${SSTATE_BUILDDIR}"
sstate_unpack_package[dirs] = "${SSTATE_INSTDIR}"

in sstate.bbclass should resolve this and another similar possible race.

Cheers,

Richard








More information about the Openembedded-core mailing list