patch-2.4.3 linux/drivers/usb/bluetooth.c

Next file: linux/drivers/usb/dc2xx.c
Previous file: linux/drivers/telephony/ixj.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.2/linux/drivers/usb/bluetooth.c linux/drivers/usb/bluetooth.c
@@ -1,11 +1,17 @@
 /*
- * bluetooth.c   Version 0.7
+ * bluetooth.c   Version 0.8
  *
  * Copyright (c) 2000 Greg Kroah-Hartman	<greg@kroah.com>
  * Copyright (c) 2000 Mark Douglas Corner	<mcorner@umich.edu>
  *
  * USB Bluetooth driver, based on the Bluetooth Spec version 1.0B
  *
+ * (2001/03/10) Version 0.8 gkh
+ *	Fixed problem with not unlinking interrupt urb on device close
+ *	and resubmitting the read urb on error with bluetooth struct.
+ *	Thanks to Narayan Mohanram <narayan@RovingNetworks.com> for the
+ *	fixes.
+ *
  * (11/29/2000) Version 0.7 gkh
  *	Fixed problem with overrunning the tty flip buffer.
  *	Removed unneeded NULL pointer initialization.
@@ -379,6 +385,7 @@
 	for (i = 0; i < NUM_BULK_URBS; ++i)
 		usb_unlink_urb (bluetooth->write_urb_pool[i]);
 	usb_unlink_urb (bluetooth->read_urb);
+	usb_unlink_urb (bluetooth->interrupt_in_urb);
 
 	bluetooth->active = 0;
 }
@@ -852,7 +859,7 @@
 
 	if (!bluetooth) {
 		dbg(__FUNCTION__ " - bad bluetooth pointer, exiting");
-		goto exit;
+		return;
 	}
 
 	if (urb->status) {

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)