neigh: restore old behaviour of default parms values
Previously inet devices were only constructed when addresses are added.
Therefore the default neigh parms values they get are the ones at the
time of these operations.
Now that we're creating inet devices earlier, this changes the behaviour
of default neigh parms values in an incompatible way (see bug #8519).
This patch creates a compromise by setting the default values at the
same point as before but only for those that have not been explicitly
set by the user since the inet device's creation.
Introduced by:
commit 8030f54499
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date: Thu Feb 22 01:53:47 2007 +0900
[IPV4] devinet: Register inetdev earlier.
Signed-off-by: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
73af614aed
commit
1d4c8c2984
@@ -425,6 +425,7 @@ struct net_device *ipmr_new_tunnel(struct net *net, struct vifctl *v)
|
||||
goto failure;
|
||||
|
||||
ipv4_devconf_setall(in_dev);
|
||||
neigh_parms_data_state_setall(in_dev->arp_parms);
|
||||
IPV4_DEVCONF(in_dev->cnf, RP_FILTER) = 0;
|
||||
|
||||
if (dev_open(dev))
|
||||
@@ -517,6 +518,7 @@ static struct net_device *ipmr_reg_vif(struct net *net, struct mr_table *mrt)
|
||||
}
|
||||
|
||||
ipv4_devconf_setall(in_dev);
|
||||
neigh_parms_data_state_setall(in_dev->arp_parms);
|
||||
IPV4_DEVCONF(in_dev->cnf, RP_FILTER) = 0;
|
||||
rcu_read_unlock();
|
||||
|
||||
|
Reference in New Issue
Block a user