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
next prev parent 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