linux/net/core
Jean-Francois Remy 4bf6980dd0 neighbour: fix base_reachable_time(_ms) not effective immediatly when changed
When setting base_reachable_time or base_reachable_time_ms on a
specific interface through sysctl or netlink, the reachable_time
value is not updated.

This means that neighbour entries will continue to be updated using the
old value until it is recomputed in neigh_period_work (which
    recomputes the value every 300*HZ).
On systems with HZ equal to 1000 for instance, it means 5mins before
the change is effective.

This patch changes this behavior by recomputing reachable_time after
each set on base_reachable_time or base_reachable_time_ms.
The new value will become effective the next time the neighbour's timer
is triggered.

Changes are made in two places: the netlink code for set and the sysctl
handling code. For sysctl, I use a proc_handler. The ipv6 network
code does provide its own handler but it already refreshes
reachable_time correctly so it's not an issue.
Any other user of neighbour which provide its own handlers must
refresh reachable_time.

Signed-off-by: Jean-Francois Remy <jeff@melix.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-01-14 00:28:00 -05:00
..
Makefile
datagram.c skb_copy_datagram_iovec() can die 2014-12-09 16:29:11 -05:00
dev.c net: Generalize ndo_gso_check to ndo_features_check 2014-12-26 17:20:56 -05:00
dev_addr_lists.c net: fix spelling for synchronized 2014-11-18 15:26:32 -05:00
dev_ioctl.c dev_ioctl: use sizeof(x) instead of sizeof x 2014-11-18 15:27:32 -05:00
drop_monitor.c
dst.c dst: no need to take reference on DST_NOCACHE dsts 2014-12-09 16:08:17 -05:00
ethtool.c ethtool: Support for configurable RSS hash function 2014-12-08 21:07:10 -05:00
fib_rules.c
filter.c net: sock: fix access via invalid file descriptor 2014-12-10 23:34:27 -05:00
flow.c
flow_dissector.c
gen_estimator.c
gen_stats.c
iovec.c fold verify_iovec() into copy_msghdr_from_user() 2014-11-19 16:23:49 -05:00
link_watch.c net/core: include linux/types.h instead of asm/types.h 2014-11-18 15:26:32 -05:00
neighbour.c neighbour: fix base_reachable_time(_ms) not effective immediatly when changed 2015-01-14 00:28:00 -05:00
net-procfs.c
net-sysfs.c net-sysfs: expose physical switch id for particular device 2014-12-02 20:01:22 -08:00
net-sysfs.h
net-traces.c
net_namespace.c bury struct proc_ns in fs/proc 2014-12-04 14:34:54 -05:00
netclassid_cgroup.c
netevent.c
netpoll.c vlan: introduce *vlan_hwaccel_push_inside helpers 2014-11-21 14:20:17 -05:00
netprio_cgroup.c
pktgen.c net: pktgen: Deletion of an unnecessary check before the function call "proc_remove" 2014-11-19 15:20:15 -05:00
ptp_classifier.c
request_sock.c
rtnetlink.c net: Disallow providing non zero VLAN ID for NIC drivers FDB add flow 2014-12-16 15:41:19 -05:00
scm.c net: introduce helper macro for_each_cmsghdr 2014-12-10 22:41:55 -05:00
secure_seq.c
skbuff.c net: Reset secmark when scrubbing packet 2014-12-24 00:21:43 -05:00
sock.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2014-12-13 13:33:26 -08:00
sock_diag.c
stream.c
sysctl_net_core.c net: provide a per host RSS key generic infrastructure 2014-11-16 15:59:11 -05:00
timestamping.c
tso.c
utils.c net: Convert LIMIT_NETDEBUG to net_dbg_ratelimited 2014-11-11 14:10:31 -05:00