From: Colin Ian King Date: Sat, 24 Nov 2018 15:03:02 +0000 (+0000) Subject: net: qualcomm: rmnet: move null check on dev before dereferecing it X-Git-Tag: v4.19.89~158 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=baf4915acc2a9c1e117693da08f9856da64d271d;p=platform%2Fkernel%2Flinux-rpi.git net: qualcomm: rmnet: move null check on dev before dereferecing it [ Upstream commit 3c18aa1464f9232d6abac8d7b4540f61b0658d62 ] Currently dev is dereferenced by the call dev_net(dev) before dev is null checked. Fix this by null checking dev before the potential null pointer dereference. Detected by CoverityScan, CID#1462955 ("Dereference before null check") Fixes: 23790ef12082 ("net: qualcomm: rmnet: Allow to configure flags for existing devices") Signed-off-by: Colin Ian King Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- diff --git a/drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c b/drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c index f66d125..4c476fa 100644 --- a/drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c +++ b/drivers/net/ethernet/qualcomm/rmnet/rmnet_config.c @@ -301,10 +301,13 @@ static int rmnet_changelink(struct net_device *dev, struct nlattr *tb[], struct rmnet_port *port; u16 mux_id; + if (!dev) + return -ENODEV; + real_dev = __dev_get_by_index(dev_net(dev), nla_get_u32(tb[IFLA_LINK])); - if (!real_dev || !dev || !rmnet_is_real_dev_registered(real_dev)) + if (!real_dev || !rmnet_is_real_dev_registered(real_dev)) return -ENODEV; port = rmnet_get_port_rtnl(real_dev);