summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorSergey Ryazanov <ryazanov.s.a@gmail.com>2021-06-22 01:50:53 +0300
committerDavid S. Miller <davem@davemloft.net>2021-06-22 20:01:16 +0300
commit58c3b421c62edd30b0b660e3e6711ad91842c271 (patch)
tree2325031d2022b27a69842311d8d661d92c5e9c78 /drivers/net
parent355a4e7e0a231af80fc0f470235dc6747d2e0936 (diff)
downloadlinux-58c3b421c62edd30b0b660e3e6711ad91842c271.tar.xz
wwan: core: require WWAN netdev setup callback existence
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>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wwan/wwan_core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wwan/wwan_core.c b/drivers/net/wwan/wwan_core.c
index 688a7278a396..1bd472195813 100644
--- a/drivers/net/wwan/wwan_core.c
+++ b/drivers/net/wwan/wwan_core.c
@@ -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);