Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1402611

Re: [PATCH 1/1] net: thunderx: avoid null pointer dereference

From Heinrich Schuchardt <xypron.glpk@gmx.de>
Newsgroups linux.kernel
Subject Re: [PATCH 1/1] net: thunderx: avoid null pointer dereference
Date 2016-05-17 23:40 +0200
Message-ID <rzUSB-1tG-7@gated-at.bofh.it> (permalink)
References <rzTa9-mb-5@gated-at.bofh.it> <rzTMS-Ot-15@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



On 05/17/2016 10:21 PM, David Daney wrote:
> On 05/17/2016 12:40 PM, Heinrich Schuchardt wrote:
>> In function bgx_lmac_handler only use a member of
>> lmac after checking it is not null.
>>
> 
> Were you seeing and actual OOPs, or is this only a theoretical problem
> flagged by some sort of static code checker?

Cppcheck identified the code inconsistency.

If the struct netdev * parameter cannot be NULL, you could eliminate the
check.

Other drivers do no have check against a NULL parameter in the
adjust_link handler function (e.g. bgmac_adjust_link,
pxa168_eth_adjust_link).

Best regards

Heinrich

> 
>> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> 
> In any event, it seems sane to make this change, so:
> 
> Acked-by: David Daney <david.daney@cavium.com>
> 
> 
>> ---
>>   drivers/net/ethernet/cavium/thunder/thunder_bgx.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/ethernet/cavium/thunder/thunder_bgx.c
>> b/drivers/net/ethernet/cavium/thunder/thunder_bgx.c
>> index d20539a..3ed2198 100644
>> --- a/drivers/net/ethernet/cavium/thunder/thunder_bgx.c
>> +++ b/drivers/net/ethernet/cavium/thunder/thunder_bgx.c
>> @@ -274,12 +274,14 @@ static void bgx_sgmii_change_link_state(struct
>> lmac *lmac)
>>   static void bgx_lmac_handler(struct net_device *netdev)
>>   {
>>       struct lmac *lmac = container_of(netdev, struct lmac, netdev);
>> -    struct phy_device *phydev = lmac->phydev;
>> +    struct phy_device *phydev;
>>       int link_changed = 0;
>>
>>       if (!lmac)
>>           return;
>>
>> +    phydev = lmac->phydev;
>> +
>>       if (!phydev->link && lmac->last_link)
>>           link_changed = -1;
>>
>>
> 
> 

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 1/1] net: thunderx: avoid null pointer dereference Heinrich Schuchardt <xypron.glpk@gmx.de> - 2016-05-17 21:50 +0200
  Re: [PATCH 1/1] net: thunderx: avoid null pointer dereference David Daney <ddaney@caviumnetworks.com> - 2016-05-17 22:30 +0200
    Re: [PATCH 1/1] net: thunderx: avoid null pointer dereference Heinrich Schuchardt <xypron.glpk@gmx.de> - 2016-05-17 23:40 +0200
  Re: [PATCH 1/1] net: thunderx: avoid null pointer dereference David Miller <davem@davemloft.net> - 2016-05-19 20:30 +0200

csiph-web