From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Wed, 08 Oct 2025 08:20:38 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-qk1-f183.google.com (mail-qk1-f183.google.com [209.85.222.183]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 5986Kaca005797 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Wed, 8 Oct 2025 08:20:36 +0200 Received: by mail-qk1-f183.google.com with SMTP id af79cd13be357-857003e911fsf1643566085a.3 for ; Tue, 07 Oct 2025 23:20:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1759904430; x=1760509230; darn=ilbers.de; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:x-original-sender :mime-version:subject:references:in-reply-to:message-id:to:from:date :from:to:cc:subject:date:message-id:reply-to; bh=0eR06+UlYvVIGRHGc0AIdrFDzMjzOJYvnc829sn0kA0=; b=fx4pjKenZFyx8JhKiIdeA9D7NOKzTOkwUFSbcCWXgqRFrII7v0Q2RH0YZHjObrU9TQ d9t1c/PwM2ohP2VkEqmL1PYE98ZJMa59ZT7+oDaHSWSvkbZUxBhqKGDo0y08DyF+XllM JfRQTDlt6q9K7TTg7iDzFVmWKGmyn3OTv76VPnvuvj+PoJ6dmbEQy8ib2p6WfFUDihLD /fu30cH4gu4fDOtdERJ3P5eMB3WsXvBW8c/ObEPD76N9XIRStSJrbFTgUWyDnjaPyFx/ KQPQqF56hH+c4V4qZm9QgARm0nSvyr1p/y+3DNz1xAzOwqSq5CNSd54mc2madHrqz63P bybg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759904430; x=1760509230; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-sender:mime-version:subject:references:in-reply-to :message-id:to:from:date:x-beenthere:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0eR06+UlYvVIGRHGc0AIdrFDzMjzOJYvnc829sn0kA0=; b=eoJjOPhcuEgYBH6v4BKjKe8tY5j9Ouhnl6WWyGcLoZd15neeHy0ZEH/wes/wsF7fex EMXWcViYGYCpGluXfVjozIniwVhZ5pDN5IhFM4KMLFv4AHbI4ISHDpbIbBtTFSBfz0/E tXEZLfVQMHOFrQb/hWdK2rQuyZitcFSf2D3A3qP3cTbPDeFsSNHZMc8ySPI/f44N1Jmu +Ee4qSq3sGukfHsy0ghZ++lzzhdqIaXTXu1s6MqJ315n2eRRacrWxgI3mOygP+/ZFz6S qOchV88mUam76e50sb9kzZPoh5GpEKSpcOTx7paYCpqiAKfLfskhyRULzH3vsRUnISbA EyPA== X-Forwarded-Encrypted: i=1; AJvYcCWta/s02C7CsuHIPsq3nVTd3B0l8ltjTjii7f1fJemHegMhXykolWc6nqqZ4QGD74BFBQFL@ilbers.de X-Gm-Message-State: AOJu0YyYpk7P1V3+JI1HlgCkxXiaP6s/aXy2cCmU2dbM/v/yaI1J8XNX MbFUPPSNgUnbTETmFEDGElbFymHy/5GlDYWiXgFHU1u/kK6odE6tFOGI X-Google-Smtp-Source: AGHT+IFsdpj8uU77+BmYi2gg7JmJ3eRUr+4rxBiIBsBVNyZdHfIfhxH11v9cCvzVy+4PszBXws7VQQ== X-Received: by 2002:a05:620a:191c:b0:84f:4ae6:6128 with SMTP id af79cd13be357-883521db925mr352399385a.42.1759904430286; Tue, 07 Oct 2025 23:20:30 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h="ARHlJd4/6xP+gGxa1c+Azj27E6ZFIBpZX+B9O/VPTDBPfSBe1A==" Received: by 2002:a05:622a:8312:b0:4b0:7bac:ac35 with SMTP id d75a77b69052e-4e559572448ls131820331cf.1.-pod-prod-05-us; Tue, 07 Oct 2025 23:20:29 -0700 (PDT) X-Received: by 2002:a05:620a:d89:b0:859:7e5d:efb0 with SMTP id af79cd13be357-883521dbdb5mr351484285a.43.1759904429055; Tue, 07 Oct 2025 23:20:29 -0700 (PDT) Date: Tue, 7 Oct 2025 23:20:27 -0700 (PDT) From: "'Badrikesh Prusty' via isar-users" To: isar-users Message-Id: <1a2a38b0-49aa-4167-a95e-16f4c5ba385dn@googlegroups.com> In-Reply-To: <3629bc6c-800e-4d4f-9ca6-ddd5bdcfa4d0@siemens.com> References: <20250403170701.807745-1-badrikesh.prusty@siemens.com> <3d694944eb24183d241bf652c43a60d7b73aec69.camel@ilbers.de> <95421431-bec5-4297-8aba-2bd9207f1785n@googlegroups.com> <3629bc6c-800e-4d4f-9ca6-ddd5bdcfa4d0@siemens.com> Subject: Re: [PATCH] image: copy DTB_FILES to DEPLOYDIR/IMAGE_FULLNAME/KERNEL_NAME/ MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_33714_2082854273.1759904427860" X-Original-Sender: badrikesh.prusty%siemens.com@gtempaccount.com X-Original-From: Badrikesh Prusty Reply-To: Badrikesh Prusty Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,HTML_MESSAGE,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: Lyvo3KDkCPPh ------=_Part_33714_2082854273.1759904427860 Content-Type: multipart/alternative; boundary="----=_Part_33715_926735393.1759904427860" ------=_Part_33715_926735393.1759904427860 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello all, Apologies for the delayed response. I somehow missed the message. > This sounds familiar, and I think we discussed that multiple times > already. Did you study previous threads/patches, e.g. > https://patchwork.isar-build.org/project/isar/list/?series=3D1241? > > Yes, there were few patches that tried to solve the issue. > > Using subdirectory (variant similar to TS's) > - https://patchwork.isar-build.org/project/isar/list/?series=3D1149 > Allows to overlap files > - https://patchwork.isar-build.org/project/isar/list/?series=3D1235 > Make kernel deploy the files, instead of image recipes > - https://patchwork.isar-build.org/project/isar/list/?series=3D1241 > I reviewed the previously shared patch, but not in full =E2=80=94 thanks fo= r=20 sharing it here. The patch I sent is very similar to @nicusor=20 patch: https://patchwork.isar-build.org/project/isar/list/?series=3D1149 I just reviewed the other patches and believe that many may encounter the= =20 same issue. For instance, when attempting to build multiple kernels for a= =20 single image=E2=80=94such as `linux-image-amd64` and `linux-image-amd64-rt`= =20 kernels=E2=80=94this overwrite problem is likely to occur. This patch also resolves the issue with image builds that include multiple= =20 kernels by storing the DTB files in the directory=20 DEPLOYDIR/IMAGE_FULLNAME/KERNEL_NAME. This will also fix issues when=20 building with different DISTROs as IMAGE_FULLNAME includes target DISTRO.= =20 Additionally, it fixes problems that arise when building with different=20 DISTROs, since IMAGE_FULLNAME includes the target DISTRO. > This would affect downstream as well. You are missing a > RECIPE-API-CHANGELOG.md entry. > Yes, it will affect downstream layers. E.g. I checked with the=20 isar-cip-core repo, changes will be required in `efibootguard-boot` wic=20 plugin. I will work on fixing it, once this is approved. Thanks and Regards, Badrikesh On Thursday, September 4, 2025 at 7:42:08=E2=80=AFPM UTC+5:30 Jan Kiszka wr= ote: > On 04.09.25 11:36, Arulpandiyan Vadivel wrote: > > @Uladzimir, @Jan Kiszka > >=20 > > As 0.11 release was out already, Can we consider merging this change? > >=20 > > Not in its current form as we explained. Plus you didn't answer the > question I gave you. > > Jan > > >=20 > > Regards, > > Arulpandiyan V > >=20 > > On Friday, 4 April 2025 at 20:01:24 UTC+5:30 Uladzimir Bely wrote: > >=20 > > On Fri, 2025-04-04 at 11:55 +0200, Jan Kiszka wrote: > > > On 03.04.25 19:07, 'Badrikesh Prusty' via isar-users wrote: > > > > From: badrikesh prusty > > > > > > > > Copy DTB_FILES to DEPLOYDIR/IMAGE_FULLNAME/KERNEL_NAME instead of > > > > DEPLOYDIR/. > > > > > > > > An issue is observed when we attempt to build a second image for a > > > > machine > > > > utilizing DTB_FILES. During the do_copy_boot_files task of image > > > > creation, the > > > > DTB_FILES are copied to the shared location DEPLOYDIR/. > > > > When the > > > > build of a second image is triggered, it detects that the DTB_FILES > > > > are already > > > > present and avoids overwriting them. > > > > > > This sounds familiar, and I think we discussed that multiple times > > > already. Did you study previous threads/patches, e.g. > > > https://patchwork.isar-build.org/project/isar/list/?series=3D1241 > > ? > > > > >=20 > > Yes, there were few patches that tried to solve the issue. > >=20 > > Using subdirectory (variant similar to TS's) > > - https://patchwork.isar-build.org/project/isar/list/?series=3D1149 > > > > Allows to overlap files > > - https://patchwork.isar-build.org/project/isar/list/?series=3D1235 > > > > Make kernel deploy the files, instead of image recipes > > - https://patchwork.isar-build.org/project/isar/list/?series=3D1241 > > > >=20 > > Finally, there is now perfect solution that would solve all possible > > issues and wouldn't break compatibility with downstreams... > >=20 > > Anyway, we are planning to prepare Isar release 0.11 without the issue > > fix (no downstream breaking changes) and apply some (or mixed) solution > > after that, even at the cost of downstreams compatibility. > >=20 > >=20 > > > > > > > > Reproducer: > > > > bitbake mc:phyboard-mira-bookworm:isar-image-base > > > > bitbake mc:phyboard-mira-bookworm:isar-image-debug > > > > > > > > Copy the DTB_FILES to the directory: > > > > DEPLOYDIR/IMAGE_FULLNAME/KERNEL_NAME/. > > > > * This will allow building multiple images. > > > > * As each kernel recipe ships its own DTB_FILES, if a user tries to > > > > rebuild > > > > the same image with a new kernel, the DTB_FILES associated with the > > > > older > > > > kernel will not be overwritten. > > > > > > > > Update the DTB_IMG variable to check for DTB_FILES in their new > > > > location. > > > > Update the WIC plugin scripts to use the DTB_FILES from their > > > > updated location > > > > within the DEPLOYDIR. > > > > Add IMAGE_FULLNAME and KERNEL_NAME to WICVARS to allow the scripts > > > > to retrieve > > > > these variable values during WIC image generation. > > > > > > > > Signed-off-by: badrikesh prusty > > > > --- > > > > meta/classes/image.bbclass | 5 +++-- > > > > meta/classes/imagetypes_wic.bbclass | 6 +++--- > > > > meta/scripts/lib/wic/plugins/source/bootimg-efi-isar.py | 4 +++- > > > > scripts/lib/wic/plugins/source/bootimg-efi.py | 4 +++- > > > > 4 files changed, 12 insertions(+), 7 deletions(-) > > > > > > > > diff --git a/meta/classes/image.bbclass > > > > b/meta/classes/image.bbclass > > > > index ff3cd737..218e7c35 100644 > > > > --- a/meta/classes/image.bbclass > > > > +++ b/meta/classes/image.bbclass > > > > @@ -326,7 +326,7 @@ EOF > > > > KERNEL_IMG =3D "${PP_DEPLOY}/${KERNEL_IMAGE}" > > > > INITRD_IMG =3D "${PP_DEPLOY}/${INITRD_DEPLOY_FILE}" > > > > # only one dtb file supported, pick the first > > > > -DTB_IMG =3D "${PP_DEPLOY}/${@(d.getVar('DTB_FILES').split() or > > > > [''])[0]}" > > > > +DTB_IMG =3D > > > > "${PP_DEPLOY}/${IMAGE_FULLNAME}/${KERNEL_NAME}/${@(d.getVar('DTB_FI > > > > LES').split() or [''])[0]}" > > > > > > > > do_copy_boot_files[cleandirs] +=3D "${DEPLOYDIR}" > > > > do_copy_boot_files[sstate-inputdirs] =3D "${DEPLOYDIR}" > > > > @@ -360,7 +360,8 @@ do_copy_boot_files() { > > > > die "${file} not found" > > > > fi > > > > > > > > - cp -f "$dtb" "${DEPLOYDIR}/" > > > > + mkdir -p "${DEPLOYDIR}/${IMAGE_FULLNAME}/${KERNEL_NAME}" > > > > + cp -f "$dtb" > > > > "${DEPLOYDIR}/${IMAGE_FULLNAME}/${KERNEL_NAME}/" > > > > done > > > > } > > > > addtask copy_boot_files before do_rootfs_postprocess after > > > > do_rootfs_install > > > > diff --git a/meta/classes/imagetypes_wic.bbclass > > > > b/meta/classes/imagetypes_wic.bbclass > > > > index 7a050e73..6b7b3727 100644 > > > > --- a/meta/classes/imagetypes_wic.bbclass > > > > +++ b/meta/classes/imagetypes_wic.bbclass > > > > @@ -102,9 +102,9 @@ WIC_DEPLOY_PARTITIONS ?=3D "0" > > > > > > > > # taken from OE, do not touch directly > > > > WICVARS +=3D "\ > > > > - BBLAYERS IMGDEPLOYDIR DEPLOY_DIR_IMAGE FAKEROOTCMD > > > > IMAGE_BASENAME IMAGE_BOOT_FILES IMAGE_EFI_BOOT_FILES \ > > > > - IMAGE_LINK_NAME IMAGE_ROOTFS INITRAMFS_FSTYPES INITRD > > > > INITRD_LIVE ISODIR RECIPE_SYSROOT_NATIVE \ > > > > - ROOTFS_SIZE STAGING_DATADIR STAGING_DIR STAGING_LIBDIR > > > > TARGET_SYS TRANSLATED_TARGET_ARCH" > > > > + BBLAYERS IMGDEPLOYDIR DEPLOY_DIR_IMAGE FAKEROOTCMD > > > > IMAGE_BASENAME IMAGE_FULLNAME IMAGE_BOOT_FILES \ > > > > + IMAGE_EFI_BOOT_FILES IMAGE_LINK_NAME IMAGE_ROOTFS > > > > INITRAMFS_FSTYPES INITRD INITRD_LIVE ISODIR KERNEL_NAME \ > > > > + RECIPE_SYSROOT_NATIVE ROOTFS_SIZE STAGING_DATADIR > > > > STAGING_DIR STAGING_LIBDIR TARGET_SYS TRANSLATED_TARGET_ARCH" > > > > > > > > # Isar specific vars used in our plugins > > > > WICVARS +=3D "DISTRO DISTRO_ARCH KERNEL_FILE" > > > > diff --git a/meta/scripts/lib/wic/plugins/source/bootimg-efi- > > > > isar.py b/meta/scripts/lib/wic/plugins/source/bootimg-efi-isar.py > > > > index 78ae4fb2..5b23671f 100644 > > > > --- a/meta/scripts/lib/wic/plugins/source/bootimg-efi-isar.py > > > > +++ b/meta/scripts/lib/wic/plugins/source/bootimg-efi-isar.py > > > > @@ -57,7 +57,9 @@ class BootimgEFIPlugin(SourcePlugin): > > > > if dtb: > > > > if ';' in dtb: > > > > raise WicError("Only one DTB supported, exiting") > > > > - cp_cmd =3D "cp %s/%s %s" % (bootimg_dir, dtb, hdddir) > > > > + image_fullname =3D get_bitbake_var("IMAGE_FULLNAME") > > > > + kernel_name =3D get_bitbake_var("KERNEL_NAME") > > > > + cp_cmd =3D "cp %s/%s/%s/%s %s" % (bootimg_dir, > > > > image_fullname, kernel_name, dtb, hdddir) > > > > exec_cmd(cp_cmd, True) > > > > > > > > @classmethod > > > > diff --git a/scripts/lib/wic/plugins/source/bootimg-efi.py > > > > b/scripts/lib/wic/plugins/source/bootimg-efi.py > > > > index 13a9cddf..cf83a6f3 100644 > > > > --- a/scripts/lib/wic/plugins/source/bootimg-efi.py > > > > +++ b/scripts/lib/wic/plugins/source/bootimg-efi.py > > > > @@ -368,7 +368,9 @@ class BootimgEFIPlugin(SourcePlugin): > > > > if dtb: > > > > if ';' in dtb: > > > > raise WicError("Only one DTB supported, > > > > exiting") > > > > - dtb_path =3D "%s/%s" % (deploy_dir, dtb) > > > > + image_fullname =3D > > > > get_bitbake_var("IMAGE_FULLNAME") > > > > + kernel_name =3D get_bitbake_var("KERNEL_NAME") > > > > + dtb_path =3D "%s/%s/%s/%s" % (deploy_dir, > > > > image_fullname, kernel_name, dtb) > > > > dtb_params =3D '--add-section .dtb=3D%s --chan= ge- > > > > section-vma .dtb=3D0x%x' % \ > > > > (dtb_path, dtb_off) > > > > linux_off =3D dtb_off + > > > > os.stat(dtb_path).st_size > > > > > > This would affect downstream as well. You are missing a > > > RECIPE-API-CHANGELOG.md entry. > > > > > > Jan > >=20 > > --=20 > > Best regards, > > Uladzimir. > >=20 > >=20 > > --=20 > > You received this message because you are subscribed to the Google > > Groups "isar-users" group. > > To unsubscribe from this group and stop receiving emails from it, send > > an email to isar-users+...@googlegroups.com > users+un...@googlegroups.com>. > > To view this discussion visit https://groups.google.com/d/msgid/isar- > > users/95421431-bec5-4297-8aba-2bd9207f1785n%40googlegroups.com > groups.google.com/d/msgid/isar-users/95421431- > > bec5-4297-8aba-2bd9207f1785n%40googlegroups.com? > > utm_medium=3Demail&utm_source=3Dfooter>. > > > --=20 > Siemens AG, Foundational Technologies > Linux Expert Center > --=20 You received this message because you are subscribed to the Google Groups "= isar-users" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to isar-users+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/isar-users/= 1a2a38b0-49aa-4167-a95e-16f4c5ba385dn%40googlegroups.com. ------=_Part_33715_926735393.1759904427860 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello all,

Apologies for the delayed response. I someh= ow missed the message.

> This sounds familiar= , and I think we discussed that multiple times
> already. Did you s= tudy previous threads/patches, e.g.
>=C2=A0https://patchwork.isar-bu= ild.org/project/isar/list/?series=3D1241?
>
>= Yes, there were few patches that tried to solve the issue.
>
= > Using subdirectory (variant similar to TS's)
> -=C2=A0https://= patchwork.isar-build.org/project/isar/list/?series=3D1149
> All= ows to overlap files
> -=C2=A0https://patchwork.isar-build.org/proje= ct/isar/list/?series=3D1235
> Make kernel deploy the files, ins= tead of image recipes
> -=C2=A0https://patchwork.isar-build.org/proj= ect/isar/list/?series=3D1241
>

I reviewed the previously shared patch, but not in full =E2=80=94 tha= nks for sharing it here.

The patch I sent is ver= y similar to @nicusor patch:=C2=A0https://patchwork.isar-build.org/project/= isar/list/?series=3D1149

I just reviewed the oth= er patches and believe that many may encounter the same issue. For instance= , when attempting to build multiple kernels for a single image=E2=80=94such= as `linux-image-amd64` and `linux-image-amd64-rt` kernels=E2=80=94this ove= rwrite problem is likely to occur.

This patch al= so resolves the issue with image builds that include multiple kernels by st= oring the DTB files in the directory DEPLOYDIR/IMAGE_FULLNAME/KERNEL_NAME. = This will also fix issues when building with different DISTROs as IMAGE_FUL= LNAME includes target DISTRO. Additionally, it fixes problems that arise wh= en building with different DISTROs, since IMAGE_FULLNAME includes the targe= t DISTRO.

> This would affect downstream as w= ell. You are missing a
> RECIPE-API-CHANGELOG.md entry.
>

Yes, it will affect downstream layers. E.g. I chec= ked with the isar-cip-core repo, changes will be required in `efibootguard-= boot` wic plugin. I will work on fixing it, once this is approved.

Thanks and Regards,
Badrikesh
On Thursday, Septem= ber 4, 2025 at 7:42:08=E2=80=AFPM UTC+5:30 Jan Kiszka wrote:
On 04.09.25 11:36, Arulpand= iyan Vadivel wrote:
> @Uladzimir, @Jan Kiszka
>=20
> As 0.11 release was out=C2=A0 already, Can we consider merging thi= s change?
>=20

Not in its current form as we explained. Plus you didn't answer the
question I gave you.

Jan

>=20
> Regards,
> Arulpandiyan V
>=20
> On Friday, 4 April 2025 at 20:01:24 UTC+5:30 Uladzimir Bely wrote:
>=20
> On Fri, 2025-04-04 at 11:55 +0200, Jan Kiszka wrote:
> > On 03.04.25 19:07, 'Badrikesh Prusty' via isar-us= ers wrote:
> > > From: badrikesh prusty <badrikes...@siemens.com>
> > >
> > > Copy DTB_FILES to DEPLOYDIR/IMAGE_FULLNAME/KERNEL_NA= ME instead of
> > > DEPLOYDIR/.
> > >
> > > An issue is observed when we attempt to build a seco= nd image for a
> > > machine
> > > utilizing DTB_FILES. During the do_copy_boot_files t= ask of image
> > > creation, the
> > > DTB_FILES are copied to the shared location DEPLOYDI= R/<dtb files>.
> > > When the
> > > build of a second image is triggered, it detects tha= t the DTB_FILES
> > > are already
> > > present and avoids overwriting them.
> >
> > This sounds familiar, and I think we discussed that multi= ple times
> > already. Did you study previous threads/patches, e.g.
> > https://patchwork.isar-bu= ild.org/project/isar/list/?series=3D1241
> <https://patchwork.isar-bui= ld.org/project/isar/list/?series=3D1241>?
> >
>=20
> Yes, there were few patches that tried to solve the issue.
>=20
> Using subdirectory (variant similar to TS's)
> - https://patchwork.isar-bui= ld.org/project/isar/list/?series=3D1149
> <https://patchwork.isar-bui= ld.org/project/isar/list/?series=3D1149>
> Allows to overlap files
> - https://patchwork.isar-bui= ld.org/project/isar/list/?series=3D1235
> <https://patchwork.isar-bui= ld.org/project/isar/list/?series=3D1235>
> Make kernel deploy the files, instead of image recipes
> - https://patchwork.isar-bui= ld.org/project/isar/list/?series=3D1241
> <https://patchwork.isar-bui= ld.org/project/isar/list/?series=3D1241>
>=20
> Finally, there is now perfect solution that would solve all po= ssible
> issues and wouldn't break compatibility with downstreams..= .
>=20
> Anyway, we are planning to prepare Isar release 0.11 without t= he issue
> fix (no downstream breaking changes) and apply some (or mixed)= solution
> after that, even at the cost of downstreams compatibility.
>=20
>=20
> > >
> > > Reproducer:
> > > bitbake mc:phyboard-mira-bookworm:isar-image-base
> > > bitbake mc:phyboard-mira-bookworm:isar-image-debug
> > >
> > > Copy the DTB_FILES to the directory:
> > > DEPLOYDIR/IMAGE_FULLNAME/KERNEL_NAME/.
> > > * This will allow building multiple images.
> > > * As each kernel recipe ships its own DTB_FILES, if = a user tries to
> > > rebuild
> > > the same image with a new kernel, the DTB_FILES asso= ciated with the
> > > older
> > > kernel will not be overwritten.
> > >
> > > Update the DTB_IMG variable to check for DTB_FILES i= n their new
> > > location.
> > > Update the WIC plugin scripts to use the DTB_FILES f= rom their
> > > updated location
> > > within the DEPLOYDIR.
> > > Add IMAGE_FULLNAME and KERNEL_NAME to WICVARS to all= ow the scripts
> > > to retrieve
> > > these variable values during WIC image generation.
> > >
> > > Signed-off-by: badrikesh prusty <badrikes...@siemens.com>
> > > ---
> > > =C2=A0meta/classes/image.bbclass=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 | 5 +++--
> > > =C2=A0meta/classes/imagetypes_wic.bbclass=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | 6 +++---
> > > =C2=A0meta/scripts/lib/wic/plugins/source/bootimg-ef= i-isar.py | 4 +++-
> > > =C2=A0scripts/lib/wic/plugins/source/bootimg-efi.py= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | 4 +++-
> > > =C2=A04 files changed, 12 insertions(+), 7 deletions= (-)
> > >
> > > diff --git a/meta/classes/image.bbclass
> > > b/meta/classes/image.bbclass
> > > index ff3cd737..218e7c35 100644
> > > --- a/meta/classes/image.bbclass
> > > +++ b/meta/classes/image.bbclass
> > > @@ -326,7 +326,7 @@ EOF
> > > =C2=A0KERNEL_IMG =3D "${PP_DEPLOY}/${KERNEL_IMA= GE}"
> > > =C2=A0INITRD_IMG =3D "${PP_DEPLOY}/${INITRD_DEP= LOY_FILE}"
> > > =C2=A0# only one dtb file supported, pick the first
> > > -DTB_IMG =3D "${PP_DEPLOY}/${@(d.getVar('DT= B_FILES').split() or
> > > [''])[0]}"
> > > +DTB_IMG =3D
> > > "${PP_DEPLOY}/${IMAGE_FULLNAME}/${KERNEL_NAME}/= ${@(d.getVar('DTB_FI
> > > LES').split() or [''])[0]}"
> > >
> > > =C2=A0do_copy_boot_files[cleandirs] +=3D "${DEP= LOYDIR}"
> > > =C2=A0do_copy_boot_files[sstate-inputdirs] =3D "= ;${DEPLOYDIR}"
> > > @@ -360,7 +360,8 @@ do_copy_boot_files() {
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 die "${file} not found"
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 fi
> > >
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 cp -f &q= uot;$dtb" "${DEPLOYDIR}/"
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 mkdir -p= "${DEPLOYDIR}/${IMAGE_FULLNAME}/${KERNEL_NAME}"
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 cp -f &q= uot;$dtb"
> > > "${DEPLOYDIR}/${IMAGE_FULLNAME}/${KERNEL_NAME}/= "
> > > =C2=A0=C2=A0=C2=A0=C2=A0 done
> > > =C2=A0}
> > > =C2=A0addtask copy_boot_files before do_rootfs_postp= rocess after
> > > do_rootfs_install
> > > diff --git a/meta/classes/imagetypes_wic.bbclass
> > > b/meta/classes/imagetypes_wic.bbclass
> > > index 7a050e73..6b7b3727 100644
> > > --- a/meta/classes/imagetypes_wic.bbclass
> > > +++ b/meta/classes/imagetypes_wic.bbclass
> > > @@ -102,9 +102,9 @@ WIC_DEPLOY_PARTITIONS ?=3D "= ;0"
> > >
> > > =C2=A0# taken from OE, do not touch directly
> > > =C2=A0WICVARS +=3D "\
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 BBLAYERS IMGDEPLOYDIR DEPLOY_DIR_IMAGE FAKEROOTCMD
> > > IMAGE_BASENAME IMAGE_BOOT_FILES IMAGE_EFI_BOOT_FILES= \
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 IMAGE_LINK_NAME IMAGE_ROOTFS INITRAMFS_FSTYPES INITRD
> > > INITRD_LIVE ISODIR RECIPE_SYSROOT_NATIVE \
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 ROOTFS_SIZE STAGING_DATADIR STAGING_DIR STAGING_LIBDIR
> > > TARGET_SYS TRANSLATED_TARGET_ARCH"
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 BBLAYERS IMGDEPLOYDIR DEPLOY_DIR_IMAGE FAKEROOTCMD
> > > IMAGE_BASENAME IMAGE_FULLNAME IMAGE_BOOT_FILES \
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 IMAGE_EFI_BOOT_FILES IMAGE_LINK_NAME IMAGE_ROOTFS
> > > INITRAMFS_FSTYPES INITRD INITRD_LIVE ISODIR KERNEL_N= AME \
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 RECIPE_SYSROOT_NATIVE ROOTFS_SIZE STAGING_DATADIR
> > > STAGING_DIR STAGING_LIBDIR TARGET_SYS TRANSLATED_TAR= GET_ARCH"
> > >
> > > =C2=A0# Isar specific vars used in our plugins
> > > =C2=A0WICVARS +=3D "DISTRO DISTRO_ARCH KERNEL_F= ILE"
> > > diff --git a/meta/scripts/lib/wic/plugins/source/boo= timg-efi-
> > > isar.py b/meta/scripts/lib/wic/plugins/source/bootim= g-efi-isar.py
> > > index 78ae4fb2..5b23671f 100644
> > > --- a/meta/scripts/lib/wic/plugins/source/bootimg-ef= i-isar.py
> > > +++ b/meta/scripts/lib/wic/plugins/source/bootimg-ef= i-isar.py
> > > @@ -57,7 +57,9 @@ class BootimgEFIPlugin(SourcePlugi= n):
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if = dtb:
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 if ';' in dtb:
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 raise WicError("Only one= DTB supported, exiting")
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 cp_cmd =3D "cp %s/%s %s" % (bootimg_dir, dtb, hdd= dir)
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 image_fullname =3D get_bitbake_var("IMAGE_FULLNAME&quo= t;)
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 kernel_name =3D get_bitbake_var("KERNEL_NAME")
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 cp_cmd =3D "cp %s/%s/%s/%s %s" % (bootimg_dir,
> > > image_fullname, kernel_name, dtb, hdddir)
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 exec_cmd(cp_cmd, True)
> > >
> > > =C2=A0=C2=A0=C2=A0=C2=A0 @classmethod
> > > diff --git a/scripts/lib/wic/plugins/source/bootimg-= efi.py
> > > b/scripts/lib/wic/plugins/source/bootimg-efi.py
> > > index 13a9cddf..cf83a6f3 100644
> > > --- a/scripts/lib/wic/plugins/source/bootimg-efi.py
> > > +++ b/scripts/lib/wic/plugins/source/bootimg-efi.py
> > > @@ -368,7 +368,9 @@ class BootimgEFIPlugin(SourcePlu= gin):
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if dtb:
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if &#= 39;;' in dtb:
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 raise WicError("Only one DTB supported,
> > > exiting")
> > > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dtb_path = =3D "%s/%s" % (deploy_dir, dtb)
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 image_fulln= ame =3D
> > > get_bitbake_var("IMAGE_FULLNAME")
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 kernel_name= =3D get_bitbake_var("KERNEL_NAME")
> > > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dtb_path = =3D "%s/%s/%s/%s" % (deploy_dir,
> > > image_fullname, kernel_name, dtb)
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dtb_p= arams =3D '--add-section .dtb=3D%s --change-
> > > section-vma .dtb=3D0x%x' % \
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (dtb_path, dtb_off)
> > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 linux= _off =3D dtb_off +
> > > os.stat(dtb_path).st_size
> >
> > This would affect downstream as well. You are missing a
> > RECIPE-API-CHANGELOG.md entry.
> >
> > Jan
>=20
> --=20
> Best regards,
> Uladzimir.
>=20
>=20
> --=20
> You received this message because you are subscribed to the Google
> Groups "isar-users" group.
> To unsubscribe from this group and stop receiving emails from it, = send
> an email to isar-users+= ...@googlegroups.com <mailto:isar-
> users+un...@googlegroup= s.com>.
> To view this discussion visit https://groups.google.com/d/msgid/isar-
> users/95421431-bec5-4297-8aba-2bd9207f1785n%40googlegroups.com <https://
> groups.google.com/d/msgid/isar-users/95421431-
> bec5-4297-8aba-2bd9207f1785n%40googlegr= oups.com?
> utm_medium=3Demail&utm_source=3Dfooter>.


--=20
Siemens AG, Foundational Technologies
Linux Expert Center

--
You received this message because you are subscribed to the Google Groups &= quot;isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to isar-use= rs+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-use= rs/1a2a38b0-49aa-4167-a95e-16f4c5ba385dn%40googlegroups.com.
------=_Part_33715_926735393.1759904427860-- ------=_Part_33714_2082854273.1759904427860--