Subject: Re: Rationale for converting if list to TAILQ
To: None <dej@eecg.toronto.edu>
From: Charles M. Hannum <mycroft@ai.mit.edu>
List: current-users
Date: 07/01/1995 19:20:29
   The reason I ask is that in the past couple of months, the method used to
   link struct ifnets has changed from a simple pointer to a TAILQ.  I found
   this out the hard way trying to install my firewall code at 1 AM (must
   ship tomorrow) and it broke due to the change.

   I don't mind that the change was made, but I'm wondering what advantages
   there are to changing something simple like a pointer into a more
   complicated list structure.  Adding a new interface is faster, but that's
   not really worth the savings - it's only done once at configuration time.

The old code was pretty severely bogus.  It shoehorned what should
have been a doubly linked list into a singly linked list.  While the
performance of this particular code isn't very important, there has
been a general push toward fixing the data structures in the kernel,
and this was just a small part of it.