diff options
author | Patrick Eigensatz <patrickeigensatz@gmail.com> | 2020-06-01 13:12:01 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2020-06-01 11:05:35 -0700 |
commit | dafe2078a75af1abe4780313ef8dd8491ba8598f (patch) | |
tree | d59bf4e8f60ebc1603d125d25c9290672993275c /net | |
parent | 07f6ecec65547099d0e5ea1b1fba748c4b90eaf0 (diff) | |
download | linux-stable-dafe2078a75af1abe4780313ef8dd8491ba8598f.tar.gz linux-stable-dafe2078a75af1abe4780313ef8dd8491ba8598f.tar.bz2 linux-stable-dafe2078a75af1abe4780313ef8dd8491ba8598f.zip |
ipv4: nexthop: Fix deadcode issue by performing a proper NULL check
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@coverity.com>
Signed-off-by: Patrick Eigensatz <patrickeigensatz@gmail.com>
Acked-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv4/nexthop.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv4/nexthop.c b/net/ipv4/nexthop.c index ebafa5ed91ac..400a9f89ebdb 100644 --- a/net/ipv4/nexthop.c +++ b/net/ipv4/nexthop.c @@ -1185,10 +1185,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; |