net: xfrm: revert to lower xfrm dst gc limit
authorFlorian Westphal <fw@strlen.de>
Mon, 17 Jul 2017 11:57:20 +0000 (13:57 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 18 Jul 2017 18:13:41 +0000 (11:13 -0700)
revert c386578f1cdb4dac230395 ("xfrm: Let the flowcache handle its size by default.").

Once we remove flow cache, we don't have a flow cache limit anymore.
We must not allow (virtually) unlimited allocations of xfrm dst entries.
Revert back to the old xfrm dst gc limits.

Signed-off-by: Florian Westphal <fw@strlen.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/networking/ip-sysctl.txt
net/ipv4/xfrm4_policy.c
net/ipv6/xfrm6_policy.c

index 974ab47ae53a81c27b2b57533db813288139fd7b..f485d553e65c5cf3409636b0815629b68817679f 100644 (file)
@@ -1291,8 +1291,7 @@ tag - INTEGER
 xfrm4_gc_thresh - INTEGER
        The threshold at which we will start garbage collecting for IPv4
        destination cache entries.  At twice this value the system will
-       refuse new allocations. The value must be set below the flowcache
-       limit (4096 * number of online cpus) to take effect.
+       refuse new allocations.
 
 igmp_link_local_mcast_reports - BOOLEAN
        Enable IGMP reports for link local multicast groups in the
@@ -1778,8 +1777,7 @@ ratelimit - INTEGER
 xfrm6_gc_thresh - INTEGER
        The threshold at which we will start garbage collecting for IPv6
        destination cache entries.  At twice this value the system will
-       refuse new allocations. The value must be set below the flowcache
-       limit (4096 * number of online cpus) to take effect.
+       refuse new allocations.
 
 
 IPv6 Update by:
index 71b4ecc195c707b3e2ce9dab974f6d68a5e5c5eb..19455a5fc3288539e779908253c292863f71286e 100644 (file)
@@ -266,7 +266,7 @@ static struct dst_ops xfrm4_dst_ops_template = {
        .destroy =              xfrm4_dst_destroy,
        .ifdown =               xfrm4_dst_ifdown,
        .local_out =            __ip_local_out,
-       .gc_thresh =            INT_MAX,
+       .gc_thresh =            32768,
 };
 
 static const struct xfrm_policy_afinfo xfrm4_policy_afinfo = {
index 79651bc71bf0d48d54e47d75cef0cd3f686e16ab..ae30dc4973e8a4e11af7ef3029881c42529cb04c 100644 (file)
@@ -286,7 +286,7 @@ static struct dst_ops xfrm6_dst_ops_template = {
        .destroy =              xfrm6_dst_destroy,
        .ifdown =               xfrm6_dst_ifdown,
        .local_out =            __ip6_local_out,
-       .gc_thresh =            INT_MAX,
+       .gc_thresh =            32768,
 };
 
 static const struct xfrm_policy_afinfo xfrm6_policy_afinfo = {