Messages in this thread | | | Date | Wed, 7 Jan 2009 13:09:12 -0600 | From | "Serge E. Hallyn" <> | Subject | Re: [TOMOYO #14 (mmotm 2008-12-30-16-05) 02/10] Singly linked list implementation. |
| |
Quoting Tetsuo Handa (penguin-kernel@i-love.sakura.ne.jp): > James Morris wrote: > > > Not all structures listed below are used as singly linked list, > > > but many of them are used as singly linked list. > > > > Can any of these be converted to your singly linked list implementation ? > > Maybe, but will be few. > > Regular singly linked list (which is known as "slist") implementation has > below characteristics. > > (1) Supports "add", "read" and "remove" operations. > (2) Caller holds read lock when reading, and holds write lock when adding or > removing. > (3) Iteration method (for_each_*) needn't to call rcu_dereference() because > caller holds locks as needed. > > TOMOYO's singly linked list (which is named as "list1") implementation has > below characteristics. > > (1) Supports "add" and "read" operations. > (2) Caller holds a lock when adding, but doesn't hold a lock when reading. > (3) Iteration method (for_each_*) needs to call rcu_dereference() because > caller doesn't hold a lock when reading. > > I think it is not a good thing to rename "list1" to "slist".
How about alist (or aolist) for append-only list?
The problem with list1 is that it *really* doesn't imply the characteristics you cite.
-serge
| |