On Sun, 13 Mar 2005, Brian Murphy wrote:

> Hi,
> This line in the acm_probe routine
> 
> tty_register_device(acm_tty_driver, minor, &intf->dev);
> 
> causes the path to the tty created for each acm to be linked to
> the usb interface. As long as the device is closed when it is
> disconnected this is no problem but if the tty is open then the
> tty deregistering is deferred. When the terminal is closed
> the interface parent to the tty no longer exists and the kernel
> crashes in kobject_get_path.
> 
>  The solution is to not link the two things together and replace
> &intf->dev above with NULL, see the attached patch.
> 
> I believe that someone else had the same problem a few days
> ago.

Would another possibility be to call usb_get_intf() before calling 
tty_register_device() and usb_put_intf() when the link is no longer 
needed?  That way the interface parent to the tty would exist for as long 
as needed.

Alan Stern



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to