this ioctl calls usb_unbind_interface() directly. It seems to me that this will make the driver model's view inconsistent.
How?
I was under the impression that driverfs keeps records of associations of drivers and devices. Doesn't it?
Hm, good point, it does. Bleah, we need a way to disconnect stuff from the driver core without actually deleting the device :(
If usb_release_interface() doesn't use device_release_driver(), it's not the fault of this ioctl ...
Maybe it's finally time to get rid of the driver pointer inside "struct usb_interface", using the driver model to do that? (Just like the driver data pointer.) Then usb_release_interface() would call device_release_driver() ... and usb_claim_interface() would call device_bind_driver().
IMHO this ioctl, is a layering violation and should be replaced in
driverfs.
It's not a layering violation to let user-mode software override policies defaulted by the kernel ... like the policy overridden by this ioctl, giving kernel drivers priority over user-mode drivers.
You are right. But the issue is in no way specific to USB. I have no problem with the syscall as such, but I think it should be in driverfs, not usbfs.
Agreed. Any proposals on how to do it?
Make the unlink("/sys/bus/usb/drivers/WHATEVER/INTERFACE") syscalls work. That's annoyingly indirect, since the link is from driver to device (not device to driver), but it's the only way this binding shows up in sysfs.
- Dave
------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
