Re: [PATCH] ipv4: nexthop: Fix deadcode issue by performing a proper NULL check

From: Nikolay Aleksandrov
Date: Mon Jun 01 2020 - 07:18:31 EST


On 01/06/2020 14:12, patrickeigensatz@xxxxxxxxx wrote:
> From: Patrick Eigensatz <patrickeigensatz@xxxxxxxxx>
>
> After allocating the spare nexthop group it should be tested for kzalloc()
> returning NULL, instead the already used nexthop group (which cannot be
> NULL at this point) had been tested so far.
>
> Additionally, if kzalloc() fails, return ERR_PTR(-ENOMEM) instead of NULL.
>
> Coverity-id: 1463885
> Reported-by: Coverity <scan-admin@xxxxxxxxxxxx>
> Signed-off-by: Patrick Eigensatz <patrickeigensatz@xxxxxxxxx>
> ---
> net/ipv4/nexthop.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/net/ipv4/nexthop.c b/net/ipv4/nexthop.c
> index 563f71bcb2d7..cb9412cd5e4b 100644
> --- a/net/ipv4/nexthop.c
> +++ b/net/ipv4/nexthop.c
> @@ -1118,10 +1118,10 @@ static struct nexthop *nexthop_create_group(struct net *net,
>
> /* spare group used for removals */
> nhg->spare = nexthop_grp_alloc(num_nh);
> - if (!nhg) {
> + if (!nhg->spare) {
> kfree(nhg);
> kfree(nh);
> - return NULL;
> + return ERR_PTR(-ENOMEM);
> }
> nhg->spare->spare = nhg;
>
>

As Colin's similar patch[1] was rejected recently, this one also fixes the issue.
This is targeted at -net.

Fixes: 90f33bffa382 ("nexthops: don't modify published nexthop groups")
Acked-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>

Thanks!

[1] https://lkml.org/lkml/2020/5/28/909