diff options
author | Stephen Hemminger | 2010-11-01 05:04:52 +0100 |
---|---|---|
committer | Stephen Hemminger | 2010-11-01 14:54:47 +0100 |
commit | 0980f2e8144ea0021a09be41176b736d76ca3db7 (patch) | |
tree | f75eac39d01072506ef3ceba0de720a77187fe90 /drivers/staging/bcm/InterfaceInit.c | |
parent | beceem: remove dead code (diff) | |
download | kernel-qcow2-linux-0980f2e8144ea0021a09be41176b736d76ca3db7.tar.gz kernel-qcow2-linux-0980f2e8144ea0021a09be41176b736d76ca3db7.tar.xz kernel-qcow2-linux-0980f2e8144ea0021a09be41176b736d76ca3db7.zip |
beceem: reserve one queue for bit-bucket
This preserves the semantics of the original driver (unclassified packets
are dropped), but does it in a clean way; and fixes crash when packet
is sent to offline device.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Diffstat (limited to 'drivers/staging/bcm/InterfaceInit.c')
-rw-r--r-- | drivers/staging/bcm/InterfaceInit.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/staging/bcm/InterfaceInit.c b/drivers/staging/bcm/InterfaceInit.c index dddf34bb7c8b..801ba65e9785 100644 --- a/drivers/staging/bcm/InterfaceInit.c +++ b/drivers/staging/bcm/InterfaceInit.c @@ -188,7 +188,8 @@ usbbcm_device_probe(struct usb_interface *intf, const struct usb_device_id *id) PS_INTERFACE_ADAPTER psIntfAdapter; struct net_device *ndev; - ndev = alloc_etherdev_mq(sizeof(MINI_ADAPTER), NO_OF_QUEUES); + /* Reserve one extra queue for the bit-bucket */ + ndev = alloc_etherdev_mq(sizeof(MINI_ADAPTER), NO_OF_QUEUES+1); if(ndev == NULL) { dev_err(&udev->dev, DRV_NAME ": no memory for device\n"); return -ENOMEM; |