On Sat, Sep 03, 2005 at 09:12:24PM -0700, Joel Becker wrote: > On Tue, Aug 30, 2005 at 04:28:46PM -0700, Andrew Morton wrote: > > Sure, but all that copying-and-pasting really sucks. I'm sure there's some > > way of providing the slightly different semantics from the same codebase?
The final piece of similar code is the buffered I/O setup for attribute files. Here, the major difference is how config_items and kobjects refer to their show/store operations. The functions have different rules on this. A kobject doesn't need show/store, it can provide one for the entire kset or subsystem. A config_item necessarily has one for its type, and cannot chain up. So somehow the code would need to know which was the case. A kobject directly has a sysfs_ops structure. The config_item has show/store in a config_item_operations strucutre. If you split them out, you add a pointer and some needless complexity. So the different code paths need to refer to the functions differently. The attribute and configfs_attribute structures are physically identical, but the sysfs one has poor naming (IMHO). If struct attribute wasn't going to change, and no magic would be added to its usage (magic like kobject_add()'s intertwining with sysfs), they could probably be shared. Joel -- "The doctrine of human equality reposes on this: that there is no man really clever who has not found that he is stupid." - Gilbert K. Chesterson Joel Becker Senior Member of Technical Staff Oracle E-mail: [EMAIL PROTECTED] Phone: (650) 506-8127 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/