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

From: David Miller
Date: Thu Mar 22 2018 - 14:47:17 EST


From: Maxime Chevallier <maxime.chevallier@xxxxxxxxxxx>
Date: Wed, 21 Mar 2018 16:14:00 +0100

> diff --git a/drivers/net/ethernet/marvell/mvpp2.c b/drivers/net/ethernet/marvell/mvpp2.c
> index 9bd35f2291d6..28e33e139178 100644
> --- a/drivers/net/ethernet/marvell/mvpp2.c
> +++ b/drivers/net/ethernet/marvell/mvpp2.c
> @@ -1913,16 +1913,11 @@ static void mvpp2_prs_sram_offset_set(struct mvpp2_prs_entry *pe,
> }
>
> /* Find parser flow entry */
> -static struct mvpp2_prs_entry *mvpp2_prs_flow_find(struct mvpp2 *priv, int flow)
> +static int mvpp2_prs_flow_find(struct mvpp2 *priv, int flow)
> {
> - struct mvpp2_prs_entry *pe;
> + struct mvpp2_prs_entry pe;
> int tid;
>
> - pe = kzalloc(sizeof(*pe), GFP_KERNEL);
> - if (!pe)
> - return NULL;
> - mvpp2_prs_tcam_lu_set(pe, MVPP2_PRS_LU_FLOWS);
> -

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.

Thank you.