public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: Henning Schild <henning.schild@siemens.com>
To: Felix Moessbauer <felix.moessbauer@siemens.com>
Cc: <isar-users@googlegroups.com>, <jan.kiszka@siemens.com>
Subject: Re: [PATCH 3/4] fix race by serialize rootfs_finalize and do_wic_image
Date: Wed, 22 Sep 2021 17:15:07 +0200	[thread overview]
Message-ID: <20210922171507.40a81eb3@md1za8fc.ad001.siemens.net> (raw)
In-Reply-To: <20210922092754.3649703-4-felix.moessbauer@siemens.com>

Am Wed, 22 Sep 2021 11:27:53 +0200
schrieb Felix Moessbauer <felix.moessbauer@siemens.com>:

> The do_wic_image task requires a mounted buildchroot.
> Prior to this patch, the wic_do_mounts task and do_rootfs_finalize
> were not ordered. By that, the do_rootfs_finalize task could run
> in parallel and unmount the buildchroot.

That is not just a mounting issue. The finalize should be done before
any imager goes to create an image. Because finalize contains quite a
bit of "rm -f".

If the actual imager task and finalize have not been serialized, we
need to look into that for all our imagers, not just wic.

The pattern we use is that imagers usually do

addtask <something>_image before do_image after do_image_tools

and it is also in ubifs cpiogz ext4 fit container ...

We need to touch all of them. Or play a global trick like

addtask image_tools after do_rootfs_finalize

to catch them all and possibly also catch the ones in layers.

Henning

> This is now fixed by adding the do_rootfs_finalize as a task
> dependency.
> 
> Signed-off-by: Felix Moessbauer <felix.moessbauer@siemens.com>
> ---
>  meta/classes/wic-img.bbclass | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/meta/classes/wic-img.bbclass
> b/meta/classes/wic-img.bbclass index e495c12..573537c 100644
> --- a/meta/classes/wic-img.bbclass
> +++ b/meta/classes/wic-img.bbclass
> @@ -147,7 +147,7 @@ python do_wic_image() {
>          bb.build.exec_func("wic_undo_mounts", d)
>          bb.utils.unlockfile(lock)
>  }
> -addtask wic_image before do_image after do_image_tools
> +addtask wic_image before do_image after do_image_tools
> do_rootfs_finalize 
>  wic_do_mounts() {
>      buildchroot_do_mounts


  reply	other threads:[~2021-09-22 15:15 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-22  9:27 [PATCH 0/4] Fix sporadic failures in do_wic_image Felix Moessbauer
2021-09-22  9:27 ` [PATCH 1/4] fix typo in do_rootfs_finalize Felix Moessbauer
2021-09-22 15:02   ` Henning Schild
2021-09-22  9:27 ` [PATCH 2/4] execute do_wic_image under a lock to ensure mountpoints remain mounted Felix Moessbauer
2021-09-22 15:04   ` Henning Schild
2021-09-22  9:27 ` [PATCH 3/4] fix race by serialize rootfs_finalize and do_wic_image Felix Moessbauer
2021-09-22 15:15   ` Henning Schild [this message]
2021-09-23  8:39     ` Moessbauer, Felix
2021-09-22  9:27 ` [PATCH 4/4] split rootfs finalization and unmounting into two tasks Felix Moessbauer
2021-09-22 15:23   ` Henning Schild

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=20210922171507.40a81eb3@md1za8fc.ad001.siemens.net \
    --to=henning.schild@siemens.com \
    --cc=felix.moessbauer@siemens.com \
    --cc=isar-users@googlegroups.com \
    --cc=jan.kiszka@siemens.com \
    /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