2024-02-13 11:35:23

by Francesco Dolcini

[permalink] [raw]
Subject: Regression, i.MX7 boot failure, Linux v6.1.77

Hello Sasha,
kernel v6.1.77 introduces a regression, with a boot failure, on i.MX7,
with commit db30f469ae8b ("ARM: dts: imx7s: Fix nand-controller #size-cells").

The issue is known [1][2], changing `#size-cells = <0>` is formally
correct, but do not play well with the firmware that are deployed on
those embedded devices, leading to a boot failure.

A mitigation was implemented in the Linux kernel,
commit 84549c816dc3 ("mtd: parsers: ofpart: add workaround for #size-cells 0")
that was merged into v6.3, the firmware was also fixed, however existing
device using old firmware will not boot anymore if updating to a newer
kernel.

I would ask you to drop such a patch from any stable patches queue and
not backport it to any older kernel.

To fix v6.1.y I see two options:
- backport 84549c816dc3
- revert db30f469ae8b

What do you prefer? Should I send myself a patch?

[1] https://lore.kernel.org/all/[email protected]/
[2] https://lore.kernel.org/all/[email protected]/

Francesco



2024-02-13 11:45:01

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: Regression, i.MX7 boot failure, Linux v6.1.77

On Tue, Feb 13, 2024 at 12:21:46PM +0100, Francesco Dolcini wrote:
> Hello Sasha,
> kernel v6.1.77 introduces a regression, with a boot failure, on i.MX7,
> with commit db30f469ae8b ("ARM: dts: imx7s: Fix nand-controller #size-cells").
>
> The issue is known [1][2], changing `#size-cells = <0>` is formally
> correct, but do not play well with the firmware that are deployed on
> those embedded devices, leading to a boot failure.
>
> A mitigation was implemented in the Linux kernel,
> commit 84549c816dc3 ("mtd: parsers: ofpart: add workaround for #size-cells 0")
> that was merged into v6.3, the firmware was also fixed, however existing
> device using old firmware will not boot anymore if updating to a newer
> kernel.
>
> I would ask you to drop such a patch from any stable patches queue and
> not backport it to any older kernel.
>
> To fix v6.1.y I see two options:
> - backport 84549c816dc3
> - revert db30f469ae8b
>
> What do you prefer? Should I send myself a patch?

Backport would be best, that way we are in sync with newer releases.

I'll go queue it up now, thanks.

greg k-h