On Tue, Mar 29, 2022 at 09:08:00AM +0000, Zheng Yongjun wrote:
> As the possible failure of the allocation, kzalloc() may return NULL
> pointer.
> Therefore, it should be better to check the 'sgi' in order to prevent
> the dereference of NULL pointer.
>
> Fixes: 23ae3a7877718 ("net: dsa: felix: add stream gate settings for psfp").
> Signed-off-by: Zheng Yongjun <[email protected]>
> ---
Reviewed-by: Vladimir Oltean <[email protected]>
>
> v1->v2:Rewrite fixes tag, delete extra 'q'.
>
> drivers/net/dsa/ocelot/felix_vsc9959.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/net/dsa/ocelot/felix_vsc9959.c b/drivers/net/dsa/ocelot/felix_vsc9959.c
> index 33f0ceae381d..2875b5250856 100644
> --- a/drivers/net/dsa/ocelot/felix_vsc9959.c
> +++ b/drivers/net/dsa/ocelot/felix_vsc9959.c
> @@ -1940,6 +1940,10 @@ static int vsc9959_psfp_filter_add(struct ocelot *ocelot, int port,
> case FLOW_ACTION_GATE:
> size = struct_size(sgi, entries, a->gate.num_entries);
> sgi = kzalloc(size, GFP_KERNEL);
> + if (!sgi) {
> + ret = -ENOMEM;
> + goto err;
> + }
> vsc9959_psfp_parse_gate(a, sgi);
> ret = vsc9959_psfp_sgi_table_add(ocelot, sgi);
> if (ret) {
> --
> 2.17.1
>