diff options
author | Oliver Neukum <oneukum@suse.com> | 2016-08-17 09:51:55 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-08-19 02:25:33 -0400 |
commit | 60bcabd080f53561efa9288be45c128feda1a8bb (patch) | |
tree | 92bce04e3e38467f5bcbfeded2aa66140adf8e1a | |
parent | b9f63ae7ba2de2ba19137c5757c0607ce40f3ed5 (diff) |
kaweth: fix firmware download
This fixes the oops discovered by the Umap2 project and Alan Stern.
The intf member needs to be set before the firmware is downloaded.
Signed-off-by: Oliver Neukum <oneukum@suse.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/usb/kaweth.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/net/usb/kaweth.c b/drivers/net/usb/kaweth.c index 770212baaf05..37bf715ab53b 100644 --- a/drivers/net/usb/kaweth.c +++ b/drivers/net/usb/kaweth.c | |||
@@ -1029,6 +1029,7 @@ static int kaweth_probe( | |||
1029 | kaweth = netdev_priv(netdev); | 1029 | kaweth = netdev_priv(netdev); |
1030 | kaweth->dev = udev; | 1030 | kaweth->dev = udev; |
1031 | kaweth->net = netdev; | 1031 | kaweth->net = netdev; |
1032 | kaweth->intf = intf; | ||
1032 | 1033 | ||
1033 | spin_lock_init(&kaweth->device_lock); | 1034 | spin_lock_init(&kaweth->device_lock); |
1034 | init_waitqueue_head(&kaweth->term_wait); | 1035 | init_waitqueue_head(&kaweth->term_wait); |
@@ -1139,8 +1140,6 @@ err_fw: | |||
1139 | 1140 | ||
1140 | dev_dbg(dev, "Initializing net device.\n"); | 1141 | dev_dbg(dev, "Initializing net device.\n"); |
1141 | 1142 | ||
1142 | kaweth->intf = intf; | ||
1143 | |||
1144 | kaweth->tx_urb = usb_alloc_urb(0, GFP_KERNEL); | 1143 | kaweth->tx_urb = usb_alloc_urb(0, GFP_KERNEL); |
1145 | if (!kaweth->tx_urb) | 1144 | if (!kaweth->tx_urb) |
1146 | goto err_free_netdev; | 1145 | goto err_free_netdev; |