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

Reply via email to