From: Gabor Juhos Date: Tue, 20 May 2008 17:40:12 +0000 (+0000) Subject: the hash_conntrack is no longer broken on ARM since 2.6.25.4 X-Git-Tag: reboot~26475 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=0f662245cbebcb364a100c6c281bcbce21cb4c84;p=openwrt%2Fstaging%2Fxback.git the hash_conntrack is no longer broken on ARM since 2.6.25.4 SVN-Revision: 11223 --- diff --git a/target/linux/generic-2.6/patches-2.6.25/950-revert_conntrack_optimization.patch b/target/linux/generic-2.6/patches-2.6.25/950-revert_conntrack_optimization.patch deleted file mode 100644 index af3e3aaa8d..0000000000 --- a/target/linux/generic-2.6/patches-2.6.25/950-revert_conntrack_optimization.patch +++ /dev/null @@ -1,31 +0,0 @@ -Index: linux-2.6.25.4/net/netfilter/nf_conntrack_core.c -=================================================================== ---- linux-2.6.25.4.orig/net/netfilter/nf_conntrack_core.c -+++ linux-2.6.25.4/net/netfilter/nf_conntrack_core.c -@@ -73,19 +73,15 @@ static unsigned int nf_conntrack_hash_rn - static u_int32_t __hash_conntrack(const struct nf_conntrack_tuple *tuple, - unsigned int size, unsigned int rnd) - { -- unsigned int n; -- u_int32_t h; -+ unsigned int a, b; - -- /* The direction must be ignored, so we hash everything up to the -- * destination ports (which is a multiple of 4) and treat the last -- * three bytes manually. -- */ -- n = (sizeof(tuple->src) + sizeof(tuple->dst.u3)) / sizeof(u32); -- h = jhash2((u32 *)tuple, n, -- rnd ^ (((__force __u16)tuple->dst.u.all << 16) | -- tuple->dst.protonum)); -+ a = jhash2(tuple->src.u3.all, ARRAY_SIZE(tuple->src.u3.all), -+ (tuple->src.l3num << 16) | tuple->dst.protonum); -+ b = jhash2(tuple->dst.u3.all, ARRAY_SIZE(tuple->dst.u3.all), -+ ((__force __u16)tuple->src.u.all << 16) | -+ (__force __u16)tuple->dst.u.all); - -- return ((u64)h * size) >> 32; -+ return ((u64)jhash_2words(a, b, rnd) * size) >> 32; - } - - static inline u_int32_t hash_conntrack(const struct nf_conntrack_tuple *tuple)