]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
wwan: core: require WWAN netdev setup callback existence
authorSergey Ryazanov <ryazanov.s.a@gmail.com>
Mon, 21 Jun 2021 22:50:53 +0000 (01:50 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 22 Jun 2021 17:01:16 +0000 (10:01 -0700)
The setup callback will be unconditionally passed to the
alloc_netdev_mqs(), where the NULL pointer dereference will cause the
kernel panic. So refuse to register WWAN netdev ops with warning
generation if the setup callback is not provided.

Signed-off-by: Sergey Ryazanov <ryazanov.s.a@gmail.com>
Reviewed-by: Loic Poulain <loic.poulain@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/wwan/wwan_core.c

index 688a7278a396c89d325adae189e85b2b961bd5b9..1bd472195813f298dc2ede057f48b9d16624aa2b 100644 (file)
@@ -917,7 +917,7 @@ int wwan_register_ops(struct device *parent, const struct wwan_ops *ops,
 {
        struct wwan_device *wwandev;
 
-       if (WARN_ON(!parent || !ops))
+       if (WARN_ON(!parent || !ops || !ops->setup))
                return -EINVAL;
 
        wwandev = wwan_create_dev(parent);