All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch 3/6] statistics infrastructure - prerequisite: list operation
@ 2005-12-14 16:14 Martin Peschke
  0 siblings, 0 replies; only message in thread
From: Martin Peschke @ 2005-12-14 16:14 UTC (permalink / raw)
  To: linux-kernel; +Cc: akpm

[patch 3/6] statistics infrastructure - prerequisite: list operation

This patch adds another list_for_each_* derivate. I can't work around it
because there is a list that I need to search both ways.

Signed-off-by: Martin Peschke <mp3@de.ibm.com>
---

  list.h |   12 ++++++++++++
  1 files changed, 12 insertions(+)

diff -Nurp c/include/linux/list.h d/include/linux/list.h
--- c/include/linux/list.h	2005-12-14 12:51:52.000000000 +0100
+++ d/include/linux/list.h	2005-12-14 13:56:08.000000000 +0100
@@ -409,6 +409,18 @@ static inline void list_splice_init(stru
  	     pos = list_entry(pos->member.next, typeof(*pos), member))

  /**
+ * list_for_each_entry_continue_reverse -       iterate backwards over list
+ *                      of given type continuing before existing point
+ * @pos:        the type * to use as a loop counter.
+ * @head:       the head for your list.
+ * @member:     the name of the list_struct within the struct.
+ */
+#define list_for_each_entry_continue_reverse(pos, head, member)                 \
+        for (pos = list_entry(pos->member.prev, typeof(*pos), member);  \
+             prefetch(pos->member.prev), &pos->member != (head);        \
+             pos = list_entry(pos->member.prev, typeof(*pos), member))
+
+/**
   * list_for_each_entry_safe - iterate over list of given type safe against removal of list entry
   * @pos:	the type * to use as a loop counter.
   * @n:		another type * to use as temporary storage

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2005-12-14 16:13 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-12-14 16:14 [patch 3/6] statistics infrastructure - prerequisite: list operation Martin Peschke

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.