mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull net into net-next to get the synchronize_net() bug fix in bonding. Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
commit
d662483264
76 changed files with 629 additions and 266 deletions
|
|
@ -2616,6 +2616,9 @@ static void sit_add_v4_addrs(struct inet6_dev *idev)
|
|||
static void init_loopback(struct net_device *dev)
|
||||
{
|
||||
struct inet6_dev *idev;
|
||||
struct net_device *sp_dev;
|
||||
struct inet6_ifaddr *sp_ifa;
|
||||
struct rt6_info *sp_rt;
|
||||
|
||||
/* ::1 */
|
||||
|
||||
|
|
@ -2627,6 +2630,30 @@ static void init_loopback(struct net_device *dev)
|
|||
}
|
||||
|
||||
add_addr(idev, &in6addr_loopback, 128, IFA_HOST);
|
||||
|
||||
/* Add routes to other interface's IPv6 addresses */
|
||||
for_each_netdev(dev_net(dev), sp_dev) {
|
||||
if (!strcmp(sp_dev->name, dev->name))
|
||||
continue;
|
||||
|
||||
idev = __in6_dev_get(sp_dev);
|
||||
if (!idev)
|
||||
continue;
|
||||
|
||||
read_lock_bh(&idev->lock);
|
||||
list_for_each_entry(sp_ifa, &idev->addr_list, if_list) {
|
||||
|
||||
if (sp_ifa->flags & (IFA_F_DADFAILED | IFA_F_TENTATIVE))
|
||||
continue;
|
||||
|
||||
sp_rt = addrconf_dst_alloc(idev, &sp_ifa->addr, 0);
|
||||
|
||||
/* Failure cases are ignored */
|
||||
if (!IS_ERR(sp_rt))
|
||||
ip6_ins_rt(sp_rt);
|
||||
}
|
||||
read_unlock_bh(&idev->lock);
|
||||
}
|
||||
}
|
||||
|
||||
static void addrconf_add_linklocal(struct inet6_dev *idev, const struct in6_addr *addr)
|
||||
|
|
|
|||
Loading…
Reference in a new issue