On Wed, Jun 16, 2004 at 07:04:09PM +0200, Harald Welte wrote: > On Wed, Jun 16, 2004 at 11:17:10AM +0200, Harald Welte wrote: > > > Apparently interface->dev is 0x10 here, thus usb_get_drvdata() inlined by > > get_intfdata() dereferences 0x10+0x74 == 0x84 > > After some more debugging, it becomes obvious that > usb_serial_disconnect() is called twice. > > First: > usb_serial_deregister() > usb_serial_disconnect() > kref_put() > usb_set_intfdata(interface, NULL) > [kref destrructor] > destroy_serial() > serial_shutdown() > cyberjack_shutdown() > return_serial() > [?] > port_release() > ... > > then, again [from where???]: > usb_serial_disconnect() > > > [see attached usb debug-enabed dmesg output. First it shows the output > captured while rmmod of a device that hasn't been used at all > (plug-rmmod). second part: plug-use-rmmod].
Ick, that's not good. Exactly what sequence of steps did you do to achive it? thanks, greg k-h ------------------------------------------------------- This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
