--- kaweth.c.alt Tue Feb 5 00:34:20 2002
+++ kaweth.c Tue Feb 5 00:40:54 2002
@@ -447,7 +447,8 @@
/****************************************************************
* kaweth_resubmit_rx_urb
****************************************************************/
-static inline void kaweth_resubmit_rx_urb(struct kaweth_device *kaweth)
+static inline void kaweth_resubmit_rx_urb(struct kaweth_device *kaweth,
+ int mem_flags)
{
int result;
@@ -461,7 +462,7 @@
kaweth_usb_receive,
kaweth);
- if((result = usb_submit_urb(kaweth->rx_urb))) {
+ if((result = usb_submit_urb(kaweth->rx_urb, mem_flags))) {
kaweth_err("resubmitting rx_urb %d failed", result);
}
}
@@ -493,7 +494,7 @@
urb->status,
count,
(int)pkt_len);
- kaweth_resubmit_rx_urb(kaweth);
+ kaweth_resubmit_rx_urb(kaweth, GFP_ATOMIC);
return;
}
@@ -502,12 +503,12 @@
kaweth_err("Packet length too long for USB frame (pkt_len: %x,
count: %x)",pkt_len, count);
kaweth_err("Packet len & 2047: %x", pkt_len & 2047);
kaweth_err("Count 2: %x", count2);
- kaweth_resubmit_rx_urb(kaweth);
+ kaweth_resubmit_rx_urb(kaweth, GFP_ATOMIC);
return;
}
if(!(skb = dev_alloc_skb(pkt_len+2))) {
- kaweth_resubmit_rx_urb(kaweth);
+ kaweth_resubmit_rx_urb(kaweth, GFP_ATOMIC);
return;
}
@@ -525,7 +526,7 @@
kaweth->stats.rx_bytes += pkt_len;
}
- kaweth_resubmit_rx_urb(kaweth);
+ kaweth_resubmit_rx_urb(kaweth, GFP_ATOMIC);
}
/****************************************************************
@@ -539,11 +540,11 @@
kaweth_dbg("Opening network device.");
- kaweth_resubmit_rx_urb(kaweth);
+ MOD_INC_USE_COUNT;
- netif_start_queue(net);
+ kaweth_resubmit_rx_urb(kaweth, GFP_KERNEL);
- MOD_INC_USE_COUNT;
+ netif_start_queue(net);
kaweth_async_set_rx_mode(kaweth);
return 0;
@@ -625,7 +626,7 @@
kaweth_usb_transmit_complete,
kaweth);
- if((res = usb_submit_urb(kaweth->tx_urb)))
+ if((res = usb_submit_urb(kaweth->tx_urb, GFP_ATOMIC)))
{
kaweth_warn("kaweth failed tx_urb %d", res);
kaweth->stats.tx_errors++;
@@ -978,7 +979,7 @@
set_current_state(TASK_INTERRUPTIBLE);
add_wait_queue(&awd.wqh, &wait);
urb->context = &awd;
- status = usb_submit_urb(urb);
+ status = usb_submit_urb(urb, GFP_KERNEL);
if (status) {
// something went wrong
usb_free_urb(urb);
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel