Merge branch 'kaweth-oopses'
Oliver Neukum says: ==================== fixes to kaweth in response to Umap2 testing These patches fix an oops in firmware downloading and an oops due to a memory allocation failure ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
4587a996b4
@ -1009,6 +1009,7 @@ static int kaweth_probe(
|
||||
struct net_device *netdev;
|
||||
const eth_addr_t bcast_addr = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF };
|
||||
int result = 0;
|
||||
int rv = -EIO;
|
||||
|
||||
dev_dbg(dev,
|
||||
"Kawasaki Device Probe (Device number:%d): 0x%4.4x:0x%4.4x:0x%4.4x\n",
|
||||
@ -1029,6 +1030,7 @@ static int kaweth_probe(
|
||||
kaweth = netdev_priv(netdev);
|
||||
kaweth->dev = udev;
|
||||
kaweth->net = netdev;
|
||||
kaweth->intf = intf;
|
||||
|
||||
spin_lock_init(&kaweth->device_lock);
|
||||
init_waitqueue_head(&kaweth->term_wait);
|
||||
@ -1048,6 +1050,10 @@ static int kaweth_probe(
|
||||
/* Download the firmware */
|
||||
dev_info(dev, "Downloading firmware...\n");
|
||||
kaweth->firmware_buf = (__u8 *)__get_free_page(GFP_KERNEL);
|
||||
if (!kaweth->firmware_buf) {
|
||||
rv = -ENOMEM;
|
||||
goto err_free_netdev;
|
||||
}
|
||||
if ((result = kaweth_download_firmware(kaweth,
|
||||
"kaweth/new_code.bin",
|
||||
100,
|
||||
@ -1139,8 +1145,6 @@ err_fw:
|
||||
|
||||
dev_dbg(dev, "Initializing net device.\n");
|
||||
|
||||
kaweth->intf = intf;
|
||||
|
||||
kaweth->tx_urb = usb_alloc_urb(0, GFP_KERNEL);
|
||||
if (!kaweth->tx_urb)
|
||||
goto err_free_netdev;
|
||||
@ -1204,7 +1208,7 @@ err_only_tx:
|
||||
err_free_netdev:
|
||||
free_netdev(netdev);
|
||||
|
||||
return -EIO;
|
||||
return rv;
|
||||
}
|
||||
|
||||
/****************************************************************
|
||||
|
Loading…
x
Reference in New Issue
Block a user