Author: nbd Date: 2015-03-20 23:13:34 +0100 (Fri, 20 Mar 2015) New Revision: 44913
Modified: trunk/target/linux/generic/patches-3.14/090-backport_netfilter_rtcache.patch trunk/target/linux/generic/patches-3.18/050-backport_netfilter_rtcache.patch trunk/target/linux/generic/patches-3.19/050-backport_netfilter_rtcache.patch trunk/target/linux/generic/patches-4.0/050-backport_netfilter_rtcache.patch Log: kernel: fix ipsec related regression in the netfilter rtcache patch Signed-off-by: Felix Fietkau <[email protected]> Modified: trunk/target/linux/generic/patches-3.14/090-backport_netfilter_rtcache.patch =================================================================== --- trunk/target/linux/generic/patches-3.14/090-backport_netfilter_rtcache.patch 2015-03-20 17:01:06 UTC (rev 44912) +++ trunk/target/linux/generic/patches-3.14/090-backport_netfilter_rtcache.patch 2015-03-20 22:13:34 UTC (rev 44913) @@ -115,7 +115,7 @@ obj-$(CONFIG_NF_CT_PROTO_GRE) += nf_conntrack_proto_gre.o --- /dev/null +++ b/net/netfilter/nf_conntrack_rtcache.c -@@ -0,0 +1,386 @@ +@@ -0,0 +1,390 @@ +/* route cache for netfilter. + * + * (C) 2014 Red Hat GmbH @@ -307,12 +307,16 @@ + enum ip_conntrack_info ctinfo; + enum ip_conntrack_dir dir; + struct nf_conn *ct; ++ struct dst_entry *dst = skb_dst(skb); + int iif; + + ct = nf_ct_get(skb, &ctinfo); + if (!ct) + return NF_ACCEPT; + ++ if (dst && dst_xfrm(dst)) ++ return NF_ACCEPT; ++ + if (!nf_ct_is_confirmed(ct)) { + if (WARN_ON(nf_ct_rtcache_find(ct))) + return NF_ACCEPT; Modified: trunk/target/linux/generic/patches-3.18/050-backport_netfilter_rtcache.patch =================================================================== --- trunk/target/linux/generic/patches-3.18/050-backport_netfilter_rtcache.patch 2015-03-20 17:01:06 UTC (rev 44912) +++ trunk/target/linux/generic/patches-3.18/050-backport_netfilter_rtcache.patch 2015-03-20 22:13:34 UTC (rev 44913) @@ -115,7 +115,7 @@ obj-$(CONFIG_NF_CT_PROTO_GRE) += nf_conntrack_proto_gre.o --- /dev/null +++ b/net/netfilter/nf_conntrack_rtcache.c -@@ -0,0 +1,387 @@ +@@ -0,0 +1,391 @@ +/* route cache for netfilter. + * + * (C) 2014 Red Hat GmbH @@ -307,12 +307,16 @@ + enum ip_conntrack_info ctinfo; + enum ip_conntrack_dir dir; + struct nf_conn *ct; ++ struct dst_entry *dst = skb_dst(skb); + int iif; + + ct = nf_ct_get(skb, &ctinfo); + if (!ct) + return NF_ACCEPT; + ++ if (dst && dst_xfrm(dst)) ++ return NF_ACCEPT; ++ + if (!nf_ct_is_confirmed(ct)) { + if (WARN_ON(nf_ct_rtcache_find(ct))) + return NF_ACCEPT; Modified: trunk/target/linux/generic/patches-3.19/050-backport_netfilter_rtcache.patch =================================================================== --- trunk/target/linux/generic/patches-3.19/050-backport_netfilter_rtcache.patch 2015-03-20 17:01:06 UTC (rev 44912) +++ trunk/target/linux/generic/patches-3.19/050-backport_netfilter_rtcache.patch 2015-03-20 22:13:34 UTC (rev 44913) @@ -115,7 +115,7 @@ obj-$(CONFIG_NF_CT_PROTO_GRE) += nf_conntrack_proto_gre.o --- /dev/null +++ b/net/netfilter/nf_conntrack_rtcache.c -@@ -0,0 +1,387 @@ +@@ -0,0 +1,391 @@ +/* route cache for netfilter. + * + * (C) 2014 Red Hat GmbH @@ -307,12 +307,16 @@ + enum ip_conntrack_info ctinfo; + enum ip_conntrack_dir dir; + struct nf_conn *ct; ++ struct dst_entry *dst = skb_dst(skb); + int iif; + + ct = nf_ct_get(skb, &ctinfo); + if (!ct) + return NF_ACCEPT; + ++ if (dst && dst_xfrm(dst)) ++ return NF_ACCEPT; ++ + if (!nf_ct_is_confirmed(ct)) { + if (WARN_ON(nf_ct_rtcache_find(ct))) + return NF_ACCEPT; Modified: trunk/target/linux/generic/patches-4.0/050-backport_netfilter_rtcache.patch =================================================================== --- trunk/target/linux/generic/patches-4.0/050-backport_netfilter_rtcache.patch 2015-03-20 17:01:06 UTC (rev 44912) +++ trunk/target/linux/generic/patches-4.0/050-backport_netfilter_rtcache.patch 2015-03-20 22:13:34 UTC (rev 44913) @@ -115,7 +115,7 @@ obj-$(CONFIG_NF_CT_PROTO_GRE) += nf_conntrack_proto_gre.o --- /dev/null +++ b/net/netfilter/nf_conntrack_rtcache.c -@@ -0,0 +1,387 @@ +@@ -0,0 +1,391 @@ +/* route cache for netfilter. + * + * (C) 2014 Red Hat GmbH @@ -307,12 +307,16 @@ + enum ip_conntrack_info ctinfo; + enum ip_conntrack_dir dir; + struct nf_conn *ct; ++ struct dst_entry *dst = skb_dst(skb); + int iif; + + ct = nf_ct_get(skb, &ctinfo); + if (!ct) + return NF_ACCEPT; + ++ if (dst && dst_xfrm(dst)) ++ return NF_ACCEPT; ++ + if (!nf_ct_is_confirmed(ct)) { + if (WARN_ON(nf_ct_rtcache_find(ct))) + return NF_ACCEPT; _______________________________________________ openwrt-commits mailing list [email protected] https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits
