On Sun, May 03, 2015 at 10:25:11PM -0700, Nicholas A. Bellinger wrote: > Historically the issue has been there is not a straight-forward way to > mix attributes provided by core and provided by a module at run time > into the same config_item_type->ct_attrs[]. Actually we're doing that for fabric modules now, with the patch originally from Bart that I sent you for 4.1, and it works just fine. We don't even need different config groups in that case. > I don't see this series reducing complexity significantly for new > drivers, or providing a much cleaner interface. > > We've always allowed fabric drivers to populate their own attributes at > runtime, and it's never been a problem for people writing new fabric > drivers. The backend drivers should have operated the same way since > day one, but they didn't. > > Now that they do, I don't see the benefit of going back to the old way > that limits flexibility just to save LOC. Actually the model fabric drives follow now is very similar to the one this patch tries to introduce, that what it is based on. Note that this isn't about saving lines of code. It's about: a) making it hard to mess up setting up the attributes correctly. All the attributes for backends at the moment aren't backend-specific, they expose core attributes. b) provide an as simple as possible interface for backends c) save binary size Less source code is just an artefact of the overall better design. -- To unsubscribe from this list: send the line "unsubscribe target-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html