Re: [PATCH RFC] struct list_node

From: Linus Torvalds
Date: Sun Jun 10 2007 - 16:20:01 EST




On Sun, 10 Jun 2007, Linus Torvalds wrote:
>
> The Linux kernel list.h is _better_ than most stupid list implementations
> that think that a head node is different from the list node. Exactly
> because it very naturally supports the notion of "this structure exists in
> a 'ring of entries'" where each node is 100% equivalent to any other node,
> and there _is_ no head.

Btw, to extend a bit on this: there actually *is* a "list with a head"
implementation in <linux/list.h>, called "hlist".

Now, the "h" actually historically stands for "hash", but if you prefer,
you can think of it as standing for "head", and be happy.

And if you want a head, you really do want to use "hlist", since the head
is smaller than a list entry (a single pointer rather than two).

And yes, I'm sure we could change some "struct list" users to "struct
hlist" if you wanted to.

Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/