diff options
author | Takashi Iwai <tiwai@suse.de> | 2018-08-14 19:10:50 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-08-14 10:24:12 -0700 |
commit | b19b46346f483ae055fa027cb2d5c2ca91484b91 (patch) | |
tree | b26dffe551e19bc43255104bf6b8e4b74a9a97a8 /drivers/net | |
parent | 4597b62f7a60d912a2bd00ca574e6bc7b87be905 (diff) | |
download | linux-b19b46346f483ae055fa027cb2d5c2ca91484b91.tar.gz linux-b19b46346f483ae055fa027cb2d5c2ca91484b91.tar.bz2 linux-b19b46346f483ae055fa027cb2d5c2ca91484b91.zip |
hv/netvsc: Fix NULL dereference at single queue mode fallback
The recent commit 916c5e1413be ("hv/netvsc: fix handling of fallback
to single queue mode") tried to fix the fallback behavior to a single
queue mode, but it changed the function to return zero incorrectly,
while the function should return an object pointer. Eventually this
leads to a NULL dereference at the callers that expect non-NULL
value.
Fix it by returning the proper net_device object.
Fixes: 916c5e1413be ("hv/netvsc: fix handling of fallback to single queue mode")
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Reviewed-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/hyperv/rndis_filter.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c index 408ece27131c..2a5209f23f29 100644 --- a/drivers/net/hyperv/rndis_filter.c +++ b/drivers/net/hyperv/rndis_filter.c @@ -1338,7 +1338,7 @@ out: /* setting up multiple channels failed */ net_device->max_chn = 1; net_device->num_chn = 1; - return 0; + return net_device; err_dev_remv: rndis_filter_device_remove(dev, net_device); |