Conditionally add definition of list_for_each_entry_safe for kernel
authorFelix Kuehling <fxkuehl@gmx.de>
Sat, 21 Feb 2004 19:54:51 +0000 (19:54 +0000)
committerFelix Kuehling <fxkuehl@gmx.de>
Sat, 21 Feb 2004 19:54:51 +0000 (19:54 +0000)
    versions that don't have it.

linux-core/drmP.h
linux/drmP.h

index 742c4ac..503d6c1 100644 (file)
                     prefetch(pos->member.next))
 #endif
 
+#ifndef list_for_each_entry_safe
+#define list_for_each_entry_safe(pos, n, head, member)                  \
+        for (pos = list_entry((head)->next, typeof(*pos), member),      \
+                n = list_entry(pos->member.next, typeof(*pos), member); \
+             &pos->member != (head);                                    \
+             pos = n, n = list_entry(n->member.next, typeof(*n), member))
+#endif
+
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,4,19)
 static inline struct page * vmalloc_to_page(void * vmalloc_addr)
 {
index 742c4ac..503d6c1 100644 (file)
                     prefetch(pos->member.next))
 #endif
 
+#ifndef list_for_each_entry_safe
+#define list_for_each_entry_safe(pos, n, head, member)                  \
+        for (pos = list_entry((head)->next, typeof(*pos), member),      \
+                n = list_entry(pos->member.next, typeof(*pos), member); \
+             &pos->member != (head);                                    \
+             pos = n, n = list_entry(n->member.next, typeof(*n), member))
+#endif
+
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,4,19)
 static inline struct page * vmalloc_to_page(void * vmalloc_addr)
 {