Am Mittwoch, 15. März 2006 20:29 schrieb Alan Stern:
> On Wed, 15 Mar 2006, Paul Fulghum wrote:
> 
> > On Wed, 2006-03-15 at 11:56 -0500, Alan Stern wrote:
> > > > Should driver core defer sysfs_remove_file until
> > > > last dev->kobj reference is dropped?
> > > 
> > > No.  The files should be deleted.  James Bottomley refers to this as 
> > > "removing from visibility".  There's no point leaving the symlink visible 
> > > once it can no longer be used.
> > > 
> > > Instead, the code should be fixed so that the attempt to remove the 
> > > already-deleted symlink by class_device_del() doesn't cause an oops.
> > 
> > So dev->kobj->dentry should be set to NULL in
> > device_remove_file() and other code should be
> > fixed to check for dev->kobj->dentry == NULL ?
> 
> I don't know.  I'm not familiar with the details of how sysfs is supposed 
> to work.  Maybe the existence of the symlink should prevent the dentry 
> from being freed during sysfs_remove_dir.  Or maybe sysfs_remove_dir 
> should modify the symlink data structure so that the other code would not 
> even try to look at dev->kobj->dentry.
> 
> (It wouldn't be a bad idea to set dev->kobj->dentry to NULL as soon as the
> dentry is deallocated anyway.  Doing that would make bugs a little easier
> to spot.)
> 
> You know, another possibility is that cdc_acm should call
> tty_unregister_device as soon as the USB device is disconnected.  It would
> make sense; no point leaving a tty visible in sysfs if it's no longer
> accessible (except through already-opened file descriptors). However I
> don't know whether the tty subsystem is designed to work that way.

The whole point of having a kref in the device structure is delayed free,
isn't it?

        Regards
                Oliver


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid0944&bid$1720&dat1642
_______________________________________________
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