ChangeSet 1.883.3.8, 2002/12/16 16:35:58-08:00, oliver@oenone.homelinux.org

[PATCH] USB: speedtouch driver memory allocation deadlock fix


diff -Nru a/drivers/usb/misc/speedtouch.c b/drivers/usb/misc/speedtouch.c
--- a/drivers/usb/misc/speedtouch.c	Wed Dec 18 00:34:51 2002
+++ b/drivers/usb/misc/speedtouch.c	Wed Dec 18 00:34:51 2002
@@ -598,7 +598,7 @@
 		       (unsigned char *) ctx->skb->data,
 		       ctx->skb->len, udsl_usb_send_data_complete, ctx);
 
-	err = usb_submit_urb (urb, GFP_KERNEL);
+	err = usb_submit_urb (urb, GFP_ATOMIC);
 
 	PDEBUG ("udsl_usb_send_data_completion (send packet %p with length %d), retval = %d\n",
 		ctx->skb, ctx->skb->len, err);
@@ -747,7 +747,7 @@
 		       usb_rcvbulkpipe (instance->usb_dev, UDSL_ENDPOINT_DATA_IN),
 		       (unsigned char *) ctx->skb->data,
 		       UDSL_RECEIVE_BUFFER_SIZE, udsl_usb_data_receive, ctx);
-	usb_submit_urb (urb, GFP_KERNEL);
+	usb_submit_urb (urb, GFP_ATOMIC);
 	return;
 };
 
