Author: fireball
Date: Mon Jun 15 17:48:55 2009
New Revision: 41416
URL: http://svn.reactos.org/svn/reactos?rev=41416&view=rev
Log:
- Don't reinitialize in case of error. Fixes a "DPC > 1 sec" problem related to an infinite loop in usbdriver.
Modified:
trunk/reactos/drivers/usb/nt4compat/usbdriver/hub.c
Modified: trunk/reactos/drivers/usb/nt4compat/usbdriver/hub.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/nt4compat/usbd…
==============================================================================
--- trunk/reactos/drivers/usb/nt4compat/usbdriver/hub.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/usb/nt4compat/usbdriver/hub.c [iso-8859-1] Mon Jun 15 17:48:55 2009
@@ -768,9 +768,6 @@
if (port_idx)
hub_check_reset_port_status(pdev, port_idx);
-
- //reinitialize the int request, here to reduce some uncertainty of concurrency
- hub_start_int_request(pdev);
}
}
return;
Author: fireball
Date: Mon Jun 15 17:30:50 2009
New Revision: 41415
URL: http://svn.reactos.org/svn/reactos?rev=41415&view=rev
Log:
- Fix NULL pointer access in an error branch inside hub_clear_port_feature_completion(). Thanks to Christoph for testing.
Modified:
trunk/reactos/drivers/usb/nt4compat/usbdriver/hub.c
Modified: trunk/reactos/drivers/usb/nt4compat/usbdriver/hub.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/usb/nt4compat/usbd…
==============================================================================
--- trunk/reactos/drivers/usb/nt4compat/usbdriver/hub.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/usb/nt4compat/usbdriver/hub.c [iso-8859-1] Mon Jun 15 17:30:50 2009
@@ -762,10 +762,15 @@
//
// do not think the device is workable, no requests to it any more.
// including the int polling
- //
- // usb_free_mem( purb );
- //
- goto LBL_SCAN_PORT_STAT;
+
+ if (purb)
+ usb_free_mem(purb);
+
+ if (port_idx)
+ hub_check_reset_port_status(pdev, port_idx);
+
+ //reinitialize the int request, here to reduce some uncertainty of concurrency
+ hub_start_int_request(pdev);
}
}
return;