|
@@ -625,6 +625,7 @@ static int ems_usb_start(struct ems_usb *dev)
|
|
usb_unanchor_urb(urb);
|
|
usb_unanchor_urb(urb);
|
|
usb_free_coherent(dev->udev, RX_BUFFER_SIZE, buf,
|
|
usb_free_coherent(dev->udev, RX_BUFFER_SIZE, buf,
|
|
urb->transfer_dma);
|
|
urb->transfer_dma);
|
|
|
|
+ usb_free_urb(urb);
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -798,8 +799,8 @@ static netdev_tx_t ems_usb_start_xmit(struct sk_buff *skb, struct net_device *ne
|
|
* allowed (MAX_TX_URBS).
|
|
* allowed (MAX_TX_URBS).
|
|
*/
|
|
*/
|
|
if (!context) {
|
|
if (!context) {
|
|
- usb_unanchor_urb(urb);
|
|
|
|
usb_free_coherent(dev->udev, size, buf, urb->transfer_dma);
|
|
usb_free_coherent(dev->udev, size, buf, urb->transfer_dma);
|
|
|
|
+ usb_free_urb(urb);
|
|
|
|
|
|
netdev_warn(netdev, "couldn't find free context\n");
|
|
netdev_warn(netdev, "couldn't find free context\n");
|
|
|
|
|