Re: [PATCH net-next v2] net: mvpp2: Don't use dynamic allocs for local variables

From: Maxime Chevallier
Date: Thu Mar 22 2018 - 15:53:14 EST


On Thu, 22 Mar 2018 15:43:08 -0400 (EDT),
David Miller <davem@xxxxxxxxxxxxx> wrote :

> From: Maxime Chevallier <maxime.chevallier@xxxxxxxxxxx>
> Date: Thu, 22 Mar 2018 20:14:53 +0100
>
> > Hello David,
> >
> > On Thu, 22 Mar 2018 14:47:09 -0400 (EDT),
> > David Miller <davem@xxxxxxxxxxxxx> wrote :
> >
> >> From: Maxime Chevallier <maxime.chevallier@xxxxxxxxxxx>
> >> Date: Wed, 21 Mar 2018 16:14:00 +0100
> >>
> >> In order to be an equivalent change you must bzero out this 'pe'
> >> object on the stack. You are only initializing the index member
> >> before passing it into other functions.
> >
> > I agree that this is unclear, but the functions I pass these
> > objects to only need the index field to be set, and will fill the
> > rest of the object according to the underlying HW representation
> > (these objects mirror the HW configuration).
> >
> > I can see that this is confusing, we might want to make the
> > mvpp2_prs_hw_read function more explicit about this.
> >
> > Would comments explaning this be enough, or should I try another
> > way to make this cleaner ?
>
> Please bzero the object as I have asked you to.
>
> Today the function doesn't care about any input members other than
> member, but in the future it might, and this is a bug waiting to
> happen.

Got it.

> It is never good to pass partially initialized variables into
> another piece of code.

Ok, I'll send another version with this.

Thanks for the review,

Maxime