>       -  in the module's cleanup routine, i unregister the usb device 
> which causes the diconnect routine to be 
> invoked(with the device still attached)

If you unregister the _driver_ that'd be correct.  And I'm hoping
that your disconnect() routine actually gets rid of all hooks that
your driver has on the device ... otherwise your driver is clearly
misbehaving, and in a way that could cause oopses.


>       -  Now when i physically detach the device, a null pointer 
> exception happens. An attempt is probably mad
> by usb core to invoke the 'disconnect' function which is not 
> there!!(since the driver module has been removed)

Sounds like this "probably" is a guess ... you can and should
be using facts instead.  What does ksymoops say happened?


>         do usb drivers in general expect the device to be detached 
> before the driver module is removed?

No.  But USB drivers in general do need to correctly implement
their disconnect() handling.

- Dave



_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to