On Tue, Jul 04, 2006 at 10:10:03AM +0100, Christoph Hellwig wrote: > On Tue, Jul 04, 2006 at 11:24:05AM +0400, Andrey Savochkin wrote: > > > Yes, it's a little more work as you need to audit all drivers to see what > > > they are doing and find suitable abstractions but it's a must have that > > > should have been done a lot earlier. > > > > Hiding dev_base_head can be done by converting first_netdev/next_netdev into > > functions and implementing for_each_netdev loop through them. > > > > Or are you talking about abstractions like functions > > for_each_netdev/find_netdev with callbacks? > > an for_each_netdev with a callback makes sense and gives a cleaner > abstraction, yes. I don't think you should need a callback for the lookup > structure.
Different modules want different kinds of lookup. So, I'm thinking about something like ilookup5. > > > Do you think that hiding the list internals is worth the additional > > complexity and substantial increase of the patch size? > > Yes, absolutely. We've converted scsi hosts and devices from a model > where drivers could directly access the list to strict iterators in the > 2.5 series. It's quite a lot of work as you have to understand what > the drivers actually do (and to at least 50% they were doing something > really stupid) and convert them to the right abstractions. The next question: would people agree to review a patch doing this for net_devices? :) Andrey - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html