SOURCES (LINUX_2_6_20): pom-ng-ROUTE-20061213.patch - hh_lock is s...

mguevara mguevara at pld-linux.org
Sat Feb 17 02:16:04 CET 2007


Author: mguevara                     Date: Sat Feb 17 01:16:04 2007 GMT
Module: SOURCES                       Tag: LINUX_2_6_20
---- Log message:
- hh_lock is seqlock instead of spinlock now

---- Files affected:
SOURCES:
   pom-ng-ROUTE-20061213.patch (1.1.2.2.2.1 -> 1.1.2.2.2.2) 

---- Diffs:

================================================================
Index: SOURCES/pom-ng-ROUTE-20061213.patch
diff -u SOURCES/pom-ng-ROUTE-20061213.patch:1.1.2.2.2.1 SOURCES/pom-ng-ROUTE-20061213.patch:1.1.2.2.2.2
--- SOURCES/pom-ng-ROUTE-20061213.patch:1.1.2.2.2.1	Mon Jan  8 16:55:47 2007
+++ SOURCES/pom-ng-ROUTE-20061213.patch	Sat Feb 17 02:15:58 2007
@@ -92,7 +92,7 @@
 diff -NurpP --minimal /home/users/builder/linux-2.6.19/net/ipv4/netfilter/ipt_ROUTE.c linux-2.6.19/net/ipv4/netfilter/ipt_ROUTE.c
 --- /home/users/builder/linux-2.6.19/net/ipv4/netfilter/ipt_ROUTE.c	1970-01-01 01:00:00.000000000 +0100
 +++ linux-2.6.19/net/ipv4/netfilter/ipt_ROUTE.c	2006-12-14 10:26:46.000000000 +0100
-@@ -0,0 +1,464 @@
+@@ -0,0 +1,457 @@
 +/*
 + * This implements the ROUTE target, which enables you to setup unusual
 + * routes not supported by the standard kernel routing table.
@@ -229,14 +229,7 @@
 +	}
 +
 +	if (hh) {
-+		int hh_alen;
-+
-+		read_lock_bh(&hh->hh_lock);
-+		hh_alen = HH_DATA_ALIGN(hh->hh_len);
-+  		memcpy(skb->data - hh_alen, hh->hh_data, hh_alen);
-+		read_unlock_bh(&hh->hh_lock);
-+		skb_push(skb, hh->hh_len);
-+		hh->hh_output(skb);
++		neigh_hh_output(dst->hh, skb);
 +	} else if (dst->neighbour)
 +		dst->neighbour->output(skb);
 +	else {
@@ -645,7 +638,7 @@
 diff -NurpP --minimal /home/users/builder/linux-2.6.19/net/ipv6/netfilter/ip6t_ROUTE.c linux-2.6.19/net/ipv6/netfilter/ip6t_ROUTE.c
 --- /home/users/builder/linux-2.6.19/net/ipv6/netfilter/ip6t_ROUTE.c	1970-01-01 01:00:00.000000000 +0100
 +++ linux-2.6.19/net/ipv6/netfilter/ip6t_ROUTE.c	2006-12-14 10:26:46.000000000 +0100
-@@ -0,0 +1,311 @@
+@@ -0,0 +1,307 @@
 +/*
 + * This implements the ROUTE v6 target, which enables you to setup unusual
 + * routes not supported by the standard kernel routing table.
@@ -769,11 +762,7 @@
 +	struct hh_cache *hh = dst->hh;
 +
 +	if (hh) {
-+		read_lock_bh(&hh->hh_lock);
-+		memcpy(skb->data - 16, hh->hh_data, 16);
-+		read_unlock_bh(&hh->hh_lock);
-+		skb_push(skb, hh->hh_len);
-+		hh->hh_output(skb);
++		neigh_hh_output(dst->hh, skb);
 +	} else if (dst->neighbour)
 +		dst->neighbour->output(skb);
 +	else {
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SOURCES/pom-ng-ROUTE-20061213.patch?r1=1.1.2.2.2.1&r2=1.1.2.2.2.2&f=u



More information about the pld-cvs-commit mailing list