Yes, that is correct. I use 2020.04.

On Mon, Sep 28, 2026 at 5:33 PM Simon Glass <[email protected]> wrote:

> Hi Mattias,
>
> On Wed, 23 Sept 2026 at 01:22, Mattias Barthel <[email protected]>
> wrote:
> >
> > Hello, u-boot.
> >
> > If bootdelaykey, bootstopkey and their corresponding default
> > configuration strings are all empty, presskey_max evaluates to
> > zero.
> >
> > Receiving serial input in this state causes the buffer management
> > logic to execute with presskey_max == 0, resulting in an unsigned
> > underflow in the expression:
> >
> >     presskey_max - 1
> >
> > This can lead to out-of-bounds memory accesses and an apparent
> > hang during autoboot.
> >
> >
> >
> > diff --git a/common/autoboot.c b/common/autoboot.c
> > index 0a59b81ae26..ea5430bb8e1 100644
> > --- a/common/autoboot.c
> > +++ b/common/autoboot.c
> > @@ -184,6 +184,12 @@ static int passwd_abort_key(uint64_t etime)
> >                               delaykey[i].str ? delaykey[i].str :
> "NULL");
> >        }
> >
> > +       /* No delay/stop strings configured, abort is impossible. */
> > +       if (presskey_max == 0) {
> > +               printf("No abort key configured, booting\n");
> > +               return 0;
> > +       }
> > +
> >        /* In order to keep up with incoming data, check timeout only
> >         * when catch up.
> >         */
> >
> >
> > ---------- Forwarded message ---------
> > From: Simon Glass <[email protected]>
> > Date: Wed, Sep 23, 2026 at 1:22 AM
> > Subject: Re: autoboot.c
> > To: Mattias Barthel <[email protected]>
> >
> >
> > Hi Mattias,
> >
> > Would you please send this email to the U-Boot list and cc me?
> >
> > Thanks,
> > Simon
> >
> > On Tue, 22 Sept 2026 at 00:39, Mattias Barthel <[email protected]>
> wrote:
> > >
> > > Hello,
> > >
> > > I am not sure who to contact regarding the autoboot.c in u-boot.
> > > Since I could see your name as last commiter along those lines I just
> thought I would
> > > reach out to you.
> > >
> > > If bootdelaykey, bootstopkey and their corresponding default
> > > configuration strings are all empty, presskey_max evaluates to
> > > zero.
> > >
> > > Receiving serial input in this state causes the buffer management
> > > logic to execute with presskey_max == 0, resulting in an unsigned
> > > underflow in the expression:
> > >
> > >     presskey_max - 1
> > >
> > > This can lead to out-of-bounds memory accesses and an apparent
> > > hang during autoboot.
> > >
> > >
> > > I just added this:
> > >
> > >
> > > +       /* No delay/stop strings configured, abort is impossible. */
> > > +       if (presskey_max == 0) {
> > > +               printf("No abort key configured, booting\n");
> > > +               return 0;
> > > +       }
> > > +
> > >
>
> Can you check which version of U-Boot you are using? It looks like
> this problem was fixed in this patch from 2021:
>
> e088f0c3d87 autoboot: fix illegal memory access when stop key and
> delay key are empty
>
> Regards,
> Simon
>


-- 
Mattias Barthel

Reply via email to