diff options
| author | Pekka Enberg <penberg@kernel.org> | 2012-01-11 21:11:29 +0200 |
|---|---|---|
| committer | Pekka Enberg <penberg@kernel.org> | 2012-01-11 21:11:29 +0200 |
| commit | 5878cf431ca7233a56819ca6970153ac0b129599 (patch) | |
| tree | e5d21d04a0b468d2dabbe3a3824f23b5537fc6a7 /net/ipv4/devinet.c | |
| parent | 74ee4ef1f901fbb014bdcdc9171d126490ce2b62 (diff) | |
| parent | b13683d1cc14d1dd30b8e20f3ebea3f814ad029f (diff) | |
Merge branch 'slab/urgent' into slab/for-linus
Diffstat (limited to 'net/ipv4/devinet.c')
| -rw-r--r-- | net/ipv4/devinet.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c index c6b5092f29a1..65f01dc47565 100644 --- a/net/ipv4/devinet.c +++ b/net/ipv4/devinet.c @@ -1490,7 +1490,9 @@ static int devinet_conf_proc(ctl_table *ctl, int write, void __user *buffer, size_t *lenp, loff_t *ppos) { + int old_value = *(int *)ctl->data; int ret = proc_dointvec(ctl, write, buffer, lenp, ppos); + int new_value = *(int *)ctl->data; if (write) { struct ipv4_devconf *cnf = ctl->extra1; @@ -1501,6 +1503,9 @@ static int devinet_conf_proc(ctl_table *ctl, int write, if (cnf == net->ipv4.devconf_dflt) devinet_copy_dflt_conf(net, i); + if (i == IPV4_DEVCONF_ACCEPT_LOCAL - 1) + if ((new_value == 0) && (old_value != 0)) + rt_cache_flush(net, 0); } return ret; |
