David:

It turns out that the scsi error-handler threads aren't getting removed 
because of a problem in the driver model core caused by a recent patch.  I 
believe the patch below will fix it.  (I haven't tried this patch, but one 
very similar to it worked okay.)

I've been trying to convince Greg that this is a real bug.  In the 
meantime, see if this helps.

Alan Stern


===== class.c 1.30 vs edited =====
--- 1.30/drivers/base/class.c   Tue Jun  3 15:15:17 2003
+++ edited/drivers/base/class.c Wed Jun 11 14:50:39 2003
@@ -282,8 +282,12 @@
        class_device_driver_link(class_dev);
 
  register_done:
-       if (error && parent)
-               class_put(parent);
+       if (error) {
+               if (class_dev->dev)
+                       put_device(class_dev->dev);
+               if (parent)
+                       class_put(parent);
+       }
        class_device_put(class_dev);
        return error;
 }
@@ -316,6 +320,8 @@
        
        kobject_del(&class_dev->kobj);
 
+       if (class_dev->dev)
+               put_device(class_dev->dev);
        if (parent)
                class_put(parent);
 }



-------------------------------------------------------
This SF.NET email is sponsored by: eBay
Great deals on office technology -- on eBay now! Click here:
http://adfarm.mediaplex.com/ad/ck/711-11697-6916-5
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to