net: igmp: Don't flush routing cache when force_igmp_version is modified
authorWilliam Manley <william.manley@youview.com>
Tue, 6 Aug 2013 18:03:14 +0000 (19:03 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 9 Aug 2013 18:27:46 +0000 (11:27 -0700)
The procfs knob /proc/sys/net/ipv4/conf/*/force_igmp_version allows the
IGMP protocol version to use to be explicitly set.  As a side effect this
caused the routing cache to be flushed as it was declared as a
DEVINET_SYSCTL_FLUSHING_ENTRY.  Flushing is unnecessary and this patch
makes it so flushing does not occur.

Requested by Hannes Frederic Sowa as he was reviewing other patches
adding procfs entries.

Suggested-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: William Manley <william.manley@youview.com>
Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Acked-by: Benjamin LaHaise <bcrl@kvack.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/inetdevice.h
net/ipv4/devinet.c

index b99cd23f347489ea0a3c2a14d58193c6e1117331..0a4a6cb353389f21a81fd902c89633e0cccaf331 100644 (file)
@@ -27,9 +27,9 @@ enum
        IPV4_DEVCONF_TAG,
        IPV4_DEVCONF_ARPFILTER,
        IPV4_DEVCONF_MEDIUM_ID,
+       IPV4_DEVCONF_FORCE_IGMP_VERSION,
        IPV4_DEVCONF_NOXFRM,
        IPV4_DEVCONF_NOPOLICY,
-       IPV4_DEVCONF_FORCE_IGMP_VERSION,
        IPV4_DEVCONF_ARP_ANNOUNCE,
        IPV4_DEVCONF_ARP_IGNORE,
        IPV4_DEVCONF_PROMOTE_SECONDARIES,
index 43923dc7744076950a1e710effd5c7c2ff4a6754..87d47ce9fa33744cfef997dde4c4c9866a0ffcfb 100644 (file)
@@ -2094,11 +2094,11 @@ static struct devinet_sysctl_table {
                DEVINET_SYSCTL_RW_ENTRY(ARP_ACCEPT, "arp_accept"),
                DEVINET_SYSCTL_RW_ENTRY(ARP_NOTIFY, "arp_notify"),
                DEVINET_SYSCTL_RW_ENTRY(PROXY_ARP_PVLAN, "proxy_arp_pvlan"),
+               DEVINET_SYSCTL_RW_ENTRY(FORCE_IGMP_VERSION,
+                                       "force_igmp_version"),
 
                DEVINET_SYSCTL_FLUSHING_ENTRY(NOXFRM, "disable_xfrm"),
                DEVINET_SYSCTL_FLUSHING_ENTRY(NOPOLICY, "disable_policy"),
-               DEVINET_SYSCTL_FLUSHING_ENTRY(FORCE_IGMP_VERSION,
-                                             "force_igmp_version"),
                DEVINET_SYSCTL_FLUSHING_ENTRY(PROMOTE_SECONDARIES,
                                              "promote_secondaries"),
                DEVINET_SYSCTL_FLUSHING_ENTRY(ROUTE_LOCALNET,