diff options
author | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2011-05-20 17:07:48 +0200 |
---|---|---|
committer | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2011-05-20 17:07:48 +0200 |
commit | 25c739d9c5af4a28b93942c246435392d25020ba (patch) | |
tree | cf957a1d3c25a381ce509030f250f0f131e3568f /kernel/include/linux/netfilter/ipset/slist.h | |
parent | 16ed481be9964a0062e81fbb333eb1c9e99a4b4e (diff) |
Removed old, not used hashing method ip_set_chash
Diffstat (limited to 'kernel/include/linux/netfilter/ipset/slist.h')
-rw-r--r-- | kernel/include/linux/netfilter/ipset/slist.h | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/kernel/include/linux/netfilter/ipset/slist.h b/kernel/include/linux/netfilter/ipset/slist.h deleted file mode 100644 index e472e43..0000000 --- a/kernel/include/linux/netfilter/ipset/slist.h +++ /dev/null @@ -1,89 +0,0 @@ -#ifndef _IP_SET_SLIST_H -#define _IP_SET_SLIST_H - -#include <linux/stddef.h> -#include <linux/prefetch.h> -#include <asm/system.h> - -/* - * Single linked lists with a single pointer. - * Mostly useful for hash tables where the two pointer list head - * and list node is too wasteful. - */ - -struct slist { - struct slist *next; -}; - -#define SLIST(name) struct slist name = { .next = NULL } -#define INIT_SLIST(ptr) ((ptr)->next = NULL) - -#define slist_entry(ptr, type, member) container_of(ptr, type, member) - -#define slist_for_each(pos, head) \ - for (pos = (head)->next; pos && ({ prefetch(pos->next); 1; }); \ - pos = pos->next) - -#define slist_for_each_prev(prev, pos, head) \ - for (prev = head, pos = (head)->next; \ - pos && ({ prefetch(pos->next); 1; }); \ - prev = pos, pos = pos->next) - -#define slist_for_each_safe(pos, n, head) \ - for (pos = (head)->next; pos && ({ n = pos->next; 1; }); \ - pos = n) - -/** - * slist_for_each_entry - iterate over list of given type - * @tpos: the type * to use as a loop cursor. - * @pos: the &struct slist to use as a loop cursor. - * @head: the head for your list. - * @member: the name of the slist within the struct. - */ -#define slist_for_each_entry(tpos, pos, head, member) \ - for (pos = (head)->next; \ - pos && ({ prefetch(pos->next); 1; }) && \ - ({ tpos = slist_entry(pos, typeof(*tpos), member); 1; });\ - pos = pos->next) - -/** - * slist_for_each_entry_continue - iterate over a hlist continuing - * after current point - * @tpos: the type * to use as a loop cursor. - * @pos: the &struct slist to use as a loop cursor. - * @member: the name of the slist within the struct. - */ -#define slist_for_each_entry_continue(tpos, pos, member) \ - for (pos = (pos)->next; \ - pos && ({ prefetch(pos->next); 1; }) && \ - ({ tpos = slist_entry(pos, typeof(*tpos), member); 1; });\ - pos = pos->next) - -/** - * slist_for_each_entry_from - iterate over a hlist continuing - * from current point - * @tpos: the type * to use as a loop cursor. - * @pos: the &struct slist to use as a loop cursor. - * @member: the name of the slist within the struct. - */ -#define slist_for_each_entry_from(tpos, pos, member) \ - for (; pos && ({ prefetch(pos->next); 1; }) && \ - ({ tpos = slist_entry(pos, typeof(*tpos), member); 1; });\ - pos = pos->next) - -/** - * slist_for_each_entry_safe - iterate over list of given type safe against - * removal of list entry - * @tpos: the type * to use as a loop cursor. - * @pos: the &struct slist to use as a loop cursor. - * @n: another &struct slist to use as temporary storage - * @head: the head for your list. - * @member: the name of the slist within the struct. - */ -#define slist_for_each_entry_safe(tpos, pos, n, head, member) \ - for (pos = (head)->next; \ - pos && ({ n = pos->next; 1; }) && \ - ({ tpos = slist_entry(pos, typeof(*tpos), member); 1; });\ - pos = n) - -#endif /* _IP_SET_SLIST_H */ |