diff options
author | Sergey Ryazanov <ryazanov.s.a@gmail.com> | 2021-06-22 01:50:53 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-06-22 20:01:16 +0300 |
commit | 58c3b421c62edd30b0b660e3e6711ad91842c271 (patch) | |
tree | 2325031d2022b27a69842311d8d661d92c5e9c78 /drivers | |
parent | 355a4e7e0a231af80fc0f470235dc6747d2e0936 (diff) | |
download | linux-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')
-rw-r--r-- | drivers/net/wwan/wwan_core.c | 2 |
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); |