patch-2.4.0-test10 linux/drivers/usb/usb-uhci.c
Next file: linux/drivers/usb/usb.c
Previous file: linux/drivers/usb/usb-ohci.h
Back to the patch index
Back to the overall index
- Lines: 45
- Date:
Mon Oct 16 15:10:01 2000
- Orig file:
v2.4.0-test9/linux/drivers/usb/usb-uhci.c
- Orig date:
Sun Oct 8 10:50:31 2000
diff -u --recursive --new-file v2.4.0-test9/linux/drivers/usb/usb-uhci.c linux/drivers/usb/usb-uhci.c
@@ -12,7 +12,7 @@
* (C) Copyright 1999 Johannes Erdfelt
* (C) Copyright 1999 Randy Dunlap
*
- * $Id: usb-uhci.c,v 1.239 2000/09/19 20:15:12 acher Exp $
+ * $Id: usb-uhci.c,v 1.242 2000/10/05 21:19:49 acher Exp $
*/
#include <linux/config.h>
@@ -48,7 +48,7 @@
/* This enables an extra UHCI slab for memory debugging */
#define DEBUG_SLAB
-#define VERSTR "$Revision: 1.239 $ time " __TIME__ " " __DATE__
+#define VERSTR "$Revision: 1.242 $ time " __TIME__ " " __DATE__
#include <linux/usb.h>
#include "usb-uhci.h"
@@ -2563,6 +2563,8 @@
uhci_submit_urb (urb);
}
}
+ else if (!urb->complete)
+ urb->dev = NULL;
if (proceed && urb->next) {
// if there are linked urbs - handle submitting of them right now.
@@ -2577,12 +2579,15 @@
if (urb->complete) {
dbg("process_transfer: calling completion");
- urb->dev=NULL;
+ if (urb->status!=-EINPROGRESS)
+ urb->dev=NULL;
urb->complete ((struct urb *) urb);
}
+ else
+ if (urb->status!=-EINPROGRESS)
+ urb->dev=NULL;
}
- urb->dev=NULL; // Just in case no completion was called
usb_dec_dev_use (usb_dev);
spin_unlock(&urb->lock);
spin_lock(&s->urb_list_lock);
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)