On Wed, Oct 17, 2018 at 07:12:32PM -0500, Scott Cheloha wrote: > The hand-rolled list queue(3) is replacing here is singly linked > but used an extra pointer in rti_delete() to get O(n) deletion. > I kept the O(n) deletion by using LIST. If the extra space needed > for LIST is unacceptable I can use SLIST instead.
Personally I don't like SLIST_REMOVE, it looks innocent but may do a list traversal. igmp does not need optimization, neither for speed nor for size. So LIST is fine here. You could move LIST_ENTRY(router_info) rti_list to the beginning of the struct to avoid padding. > ok as-is? OK bluhm@