diff mbox series

[kirkstone,7/8] kernel-fitImage: Strip path component from dtb

Message ID 9a42349a176ca4d7a1bfab3425a0821dbcbd9368.1701299008.git.steve@sakoman.com
State Accepted, archived
Commit 9a42349a176ca4d7a1bfab3425a0821dbcbd9368
Headers show
Series [kirkstone,1/8] gstreamer1.0-plugins-bad: fix CVE-2023-44429 | expand

Commit Message

Steve Sakoman Nov. 29, 2023, 11:05 p.m. UTC
From: Ninad Palsule <ninad@linux.ibm.com>

Machines that have added subdirectires to the KERNEL_DEVICETREE
recently, such as arm32 boards that were moved under subdirectories in
Linux 6.5, will have that subdirectory in the node name of the FIT. This
breaks existing systems that select a configuration in u-boot by it's
name.

Strip off the directory component from the device tree to preserve
compatibility.

(From OE-Core rev: 941ba1a132bafa9c9be855fb91fec96d8b06299f)

Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de> # backport to kirkstone
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---
 meta/classes/kernel-fitimage.bbclass | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Max Krummenacher Dec. 14, 2023, 10:41 a.m. UTC | #1
On Thu, Nov 30, 2023 at 12:05 AM Steve Sakoman <steve@sakoman.com> wrote:
>
> From: Ninad Palsule <ninad@linux.ibm.com>
>
> Machines that have added subdirectires to the KERNEL_DEVICETREE
> recently, such as arm32 boards that were moved under subdirectories in
> Linux 6.5, will have that subdirectory in the node name of the FIT. This
> breaks existing systems that select a configuration in u-boot by it's
> name.
>
> Strip off the directory component from the device tree to preserve
> compatibility.

This now breaks each arm64 machine (and likely mips & riscv) as they did
have the vendor subdirectories since (nearly) ever and expect those in the
fitimage.

Breaking those existing machines / kernel combination in order to have a
smooth transition for arm32 machines which bring a 6.5 kernel to kirkstone
seems wrong to me.

I think we should revert the backport to kirkstone. If someone builds a 6.5
or later kernel in kirkstone for an arm32 based machine one could cope
with the change e.g. in the kernel recipe which provides that 6.5 kernel.

Any comments? Thanks.

Sorry that I didn't notice the change on the mailing list before it got applied.

Regards
Max

>
> (From OE-Core rev: 941ba1a132bafa9c9be855fb91fec96d8b06299f)
>
> Signed-off-by: Joel Stanley <joel@jms.id.au>
> Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de> # backport to kirkstone
> Signed-off-by: Steve Sakoman <steve@sakoman.com>
> ---
>  meta/classes/kernel-fitimage.bbclass | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/meta/classes/kernel-fitimage.bbclass b/meta/classes/kernel-fitimage.bbclass
> index 27e17db951..194d825b0e 100644
> --- a/meta/classes/kernel-fitimage.bbclass
> +++ b/meta/classes/kernel-fitimage.bbclass
> @@ -542,6 +542,11 @@ fitimage_assemble() {
>                                 DTB_PATH="arch/${ARCH}/boot/$DTB"
>                         fi
>
> +                       # Strip off the path component from the filename
> +                       if "${@'false' if oe.types.boolean(d.getVar('KERNEL_DTBVENDORED')) else 'true'}"; then
> +                               DTB=`basename $DTB`
> +                       fi
> +
>                         DTB=$(echo "$DTB" | tr '/' '_')
>
>                         # Skip DTB if we've picked it up previously
> --
> 2.34.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#191471): https://lists.openembedded.org/g/openembedded-core/message/191471
> Mute This Topic: https://lists.openembedded.org/mt/102883133/3617484
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [max.oss.09@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Steve Sakoman Dec. 14, 2023, 1:56 p.m. UTC | #2
On Thu, Dec 14, 2023 at 12:42 AM Max Krummenacher <max.oss.09@gmail.com> wrote:
>
> On Thu, Nov 30, 2023 at 12:05 AM Steve Sakoman <steve@sakoman.com> wrote:
> >
> > From: Ninad Palsule <ninad@linux.ibm.com>
> >
> > Machines that have added subdirectires to the KERNEL_DEVICETREE
> > recently, such as arm32 boards that were moved under subdirectories in
> > Linux 6.5, will have that subdirectory in the node name of the FIT. This
> > breaks existing systems that select a configuration in u-boot by it's
> > name.
> >
> > Strip off the directory component from the device tree to preserve
> > compatibility.
>
> This now breaks each arm64 machine (and likely mips & riscv) as they did
> have the vendor subdirectories since (nearly) ever and expect those in the
> fitimage.
>
> Breaking those existing machines / kernel combination in order to have a
> smooth transition for arm32 machines which bring a 6.5 kernel to kirkstone
> seems wrong to me.
>
> I think we should revert the backport to kirkstone. If someone builds a 6.5
> or later kernel in kirkstone for an arm32 based machine one could cope
> with the change e.g. in the kernel recipe which provides that 6.5 kernel.
>
> Any comments? Thanks.
>
> Sorry that I didn't notice the change on the mailing list before it got applied.

Since this is causing breakage I will revert it prior to the upcoming
kirkstone release build.

Steve

> > (From OE-Core rev: 941ba1a132bafa9c9be855fb91fec96d8b06299f)
> >
> > Signed-off-by: Joel Stanley <joel@jms.id.au>
> > Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
> > Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
> > Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> > Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de> # backport to kirkstone
> > Signed-off-by: Steve Sakoman <steve@sakoman.com>
> > ---
> >  meta/classes/kernel-fitimage.bbclass | 5 +++++
> >  1 file changed, 5 insertions(+)
> >
> > diff --git a/meta/classes/kernel-fitimage.bbclass b/meta/classes/kernel-fitimage.bbclass
> > index 27e17db951..194d825b0e 100644
> > --- a/meta/classes/kernel-fitimage.bbclass
> > +++ b/meta/classes/kernel-fitimage.bbclass
> > @@ -542,6 +542,11 @@ fitimage_assemble() {
> >                                 DTB_PATH="arch/${ARCH}/boot/$DTB"
> >                         fi
> >
> > +                       # Strip off the path component from the filename
> > +                       if "${@'false' if oe.types.boolean(d.getVar('KERNEL_DTBVENDORED')) else 'true'}"; then
> > +                               DTB=`basename $DTB`
> > +                       fi
> > +
> >                         DTB=$(echo "$DTB" | tr '/' '_')
> >
> >                         # Skip DTB if we've picked it up previously
> > --
> > 2.34.1
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#191471): https://lists.openembedded.org/g/openembedded-core/message/191471
> > Mute This Topic: https://lists.openembedded.org/mt/102883133/3617484
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [max.oss.09@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
Max Krummenacher Dec. 14, 2023, 4:39 p.m. UTC | #3
On Thu, Dec 14, 2023 at 03:56:13AM -1000, Steve Sakoman wrote:
> On Thu, Dec 14, 2023 at 12:42 AM Max Krummenacher <max.oss.09@gmail.com> wrote:
> >
> > On Thu, Nov 30, 2023 at 12:05 AM Steve Sakoman <steve@sakoman.com> wrote:
> > >
> > > From: Ninad Palsule <ninad@linux.ibm.com>
> > >
> > > Machines that have added subdirectires to the KERNEL_DEVICETREE
> > > recently, such as arm32 boards that were moved under subdirectories in
> > > Linux 6.5, will have that subdirectory in the node name of the FIT. This
> > > breaks existing systems that select a configuration in u-boot by it's
> > > name.
> > >
> > > Strip off the directory component from the device tree to preserve
> > > compatibility.
> >
> > This now breaks each arm64 machine (and likely mips & riscv) as they did
> > have the vendor subdirectories since (nearly) ever and expect those in the
> > fitimage.
> >
> > Breaking those existing machines / kernel combination in order to have a
> > smooth transition for arm32 machines which bring a 6.5 kernel to kirkstone
> > seems wrong to me.
> >
> > I think we should revert the backport to kirkstone. If someone builds a 6.5
> > or later kernel in kirkstone for an arm32 based machine one could cope
> > with the change e.g. in the kernel recipe which provides that 6.5 kernel.
> >
> > Any comments? Thanks.
> >
> > Sorry that I didn't notice the change on the mailing list before it got applied.
> 
> Since this is causing breakage I will revert it prior to the upcoming
> kirkstone release build.
> 
> Steve

Thanks Steve. Much appreciated.
Max

> 
> > > (From OE-Core rev: 941ba1a132bafa9c9be855fb91fec96d8b06299f)
> > >
> > > Signed-off-by: Joel Stanley <joel@jms.id.au>
> > > Signed-off-by: Ninad Palsule <ninad@linux.ibm.com>
> > > Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
> > > Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> > > Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de> # backport to kirkstone
> > > Signed-off-by: Steve Sakoman <steve@sakoman.com>
> > > ---
> > >  meta/classes/kernel-fitimage.bbclass | 5 +++++
> > >  1 file changed, 5 insertions(+)
> > >
> > > diff --git a/meta/classes/kernel-fitimage.bbclass b/meta/classes/kernel-fitimage.bbclass
> > > index 27e17db951..194d825b0e 100644
> > > --- a/meta/classes/kernel-fitimage.bbclass
> > > +++ b/meta/classes/kernel-fitimage.bbclass
> > > @@ -542,6 +542,11 @@ fitimage_assemble() {
> > >                                 DTB_PATH="arch/${ARCH}/boot/$DTB"
> > >                         fi
> > >
> > > +                       # Strip off the path component from the filename
> > > +                       if "${@'false' if oe.types.boolean(d.getVar('KERNEL_DTBVENDORED')) else 'true'}"; then
> > > +                               DTB=`basename $DTB`
> > > +                       fi
> > > +
> > >                         DTB=$(echo "$DTB" | tr '/' '_')
> > >
> > >                         # Skip DTB if we've picked it up previously
> > > --
> > > 2.34.1
> > >
> > >
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > > Links: You receive all messages sent to this group.
> > > View/Reply Online (#191471): https://lists.openembedded.org/g/openembedded-core/message/191471
> > > Mute This Topic: https://lists.openembedded.org/mt/102883133/3617484
> > > Group Owner: openembedded-core+owner@lists.openembedded.org
> > > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [max.oss.09@gmail.com]
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > >
>
diff mbox series

Patch

diff --git a/meta/classes/kernel-fitimage.bbclass b/meta/classes/kernel-fitimage.bbclass
index 27e17db951..194d825b0e 100644
--- a/meta/classes/kernel-fitimage.bbclass
+++ b/meta/classes/kernel-fitimage.bbclass
@@ -542,6 +542,11 @@  fitimage_assemble() {
 				DTB_PATH="arch/${ARCH}/boot/$DTB"
 			fi
 
+			# Strip off the path component from the filename
+			if "${@'false' if oe.types.boolean(d.getVar('KERNEL_DTBVENDORED')) else 'true'}"; then
+				DTB=`basename $DTB`
+			fi
+
 			DTB=$(echo "$DTB" | tr '/' '_')
 
 			# Skip DTB if we've picked it up previously