kernel: add a small xfrm related performance optimization

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41950 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Felix Fietkau 2014-08-02 18:50:50 +00:00
parent bd32ed2b21
commit bad5168e7b
2 changed files with 26 additions and 0 deletions

View File

@ -0,0 +1,13 @@
--- a/net/netfilter/nf_nat_core.c
+++ b/net/netfilter/nf_nat_core.c
@@ -89,6 +89,9 @@ int nf_xfrm_me_harder(struct sk_buff *sk
struct dst_entry *dst;
int err;
+ if (!dev_net(skb->dev)->xfrm.policy_count[XFRM_POLICY_OUT])
+ return 0;
+
err = xfrm_decode_session(skb, &fl, family);
if (err < 0)
return err;

View File

@ -0,0 +1,13 @@
--- a/net/netfilter/nf_nat_core.c
+++ b/net/netfilter/nf_nat_core.c
@@ -90,6 +90,9 @@ int nf_xfrm_me_harder(struct sk_buff *sk
struct dst_entry *dst;
int err;
+ if (!dev_net(skb->dev)->xfrm.policy_count[XFRM_POLICY_OUT])
+ return 0;
+
err = xfrm_decode_session(skb, &fl, family);
if (err < 0)
return err;