net: linkwatch: add check for netdevice being present to linkwatch_do_dev
mainline inclusion from mainline-v5.1-rc1 commit 124eee3f category: bugfix bugzilla: NA CVE: NA ------------------------------------------------------ When bringing down the netdevice (incl. detaching it) and calling netif_carrier_off directly or indirectly the latter triggers an asynchronous linkwatch event. This linkwatch event eventually may fail to access chip registers in the ndo_get_stats/ndo_get_stats64 callback because the device isn't accessible any longer, see call trace in [0]. To prevent this scenario don't check for IFF_UP only, but also make sure that the netdevice is present. [0] https://lists.openwall.net/netdev/2018/03/15/62Signed-off-by: NHeiner Kallweit <hkallweit1@gmail.com> Tested-by: NGeert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: NFlorian Fainelli <f.fainelli@gmail.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net> Reviewed-by: NWeiwei Deng <dengweiwei@huawei.com> Reviewed-by: NZhaohui Zhong <zhongzhaohui@huawei.com> Reviewed-by: NYonglong Liu <liuyonglong@huawei.com> Signed-off-by: NYou Shengzui <youshengzui@huawei.com> Reviewed-by: NYueHaibing <yuehaibing@huawei.com> Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
Showing
想要评论请 注册 或 登录