Re: [TOMOYO #7 02/30] Internal functions prototypes for SAKURA andTOMOYO.

From: Tetsuo Handa
Date: Mon Apr 07 2008 - 09:57:01 EST


Daniel Walker wrote:
> > +/**
> > + * list1_entry - get the struct for this entry
> > + * @ptr: the &struct list1_head pointer.
> > + * @type: the type of the struct this is embedded in.
> > + * @member: the name of the list1_struct within the struct.
> > + */
> > +#define list1_entry(ptr, type, member) container_of(ptr, type,
> > member)
> > +
> > +/**
> > + * list1_for_each - iterate over a list
> > + * @pos: the &struct list1_head to use as a loop cursor.
> > + * @head: the head for your list.
> > + */
> > +#define list1_for_each(pos,
> > head) \
> > + for (pos = (head)->next; prefetch(pos->next), pos !=
> > (head); \
> > + pos = pos->next)
> > +
>
> These should go into include/linux/list.h .. It looks like you are
> duplicate at least some of what is already in there..

I see. I'll move it on next posting.
Although people advised me to use standard doubly linked list,
TOMOYO wants to use singly linked list because the elements are append only.
If TOMOYO is allowed to use singly linked list, it can make the source code read lock free.

Thank you.
--
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/