On 7/20/22 13:30, Jose Quaresma wrote:
The task do_compile_kernelmodules runs after the shared_workdir and
is installing some files in STAGING_KERNEL_BUILDDIR, this can races
in other recipes that depends on "virtual/kernel:do_shared_workdir"
as the STAGING_KERNEL_BUILDDIR is not fully populated when the
shared_workdir task ends.

To address this issue a new task is added in place of the previows one
so the shared_workdir will run after the do_compile_kernelmodules and
the new shared_workdir_prepare will replce of the old shared_workdir.

Signed-off-by: Jose Quaresma <jose.quare...@foundries.io>
---
  meta/classes/kernel.bbclass | 11 +++++++++--
  1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index 5d2f17c3be..5558769c92 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -504,7 +504,8 @@ do_kernel_version_sanity_check() {
        exit 0
  }
-addtask shared_workdir after do_compile before do_compile_kernelmodules
+addtask shared_workdir_prepare after do_compile before do_compile_kernelmodules
+addtask shared_workdir after do_compile_kernelmodules
  addtask shared_workdir_setscene
do_shared_workdir_setscene () {
@@ -520,10 +521,16 @@ emit_depmod_pkgdata() {
PACKAGEFUNCS += "emit_depmod_pkgdata" -do_shared_workdir[cleandirs] += " ${STAGING_KERNEL_BUILDDIR}"
  do_shared_workdir () {
        cd ${B}
+ kerneldir=${STAGING_KERNEL_BUILDDIR}
+}

Does the above do anything actually useful ? I thought neither the current workdir or a variable set in a shell function would be preserved for the next task ?

+
+do_shared_workdir_prepare[cleandirs] += " ${STAGING_KERNEL_BUILDDIR}"
+do_shared_workdir_prepare () {
+       cd ${B}
+
        kerneldir=${STAGING_KERNEL_BUILDDIR}
        install -d $kerneldir

Jacob
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#168794): 
https://lists.openembedded.org/g/openembedded-core/message/168794
Mute This Topic: https://lists.openembedded.org/mt/92502346/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to