Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts: drivers/net/ethernet/mediatek/mtk_eth_soc.c drivers/net/ethernet/qlogic/qed/qed_dcbx.c drivers/net/phy/Kconfig All conflicts were cases of overlapping commits. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -1057,6 +1057,7 @@ struct fib_info *fib_create_info(struct fib_config *cfg)
|
||||
fi->fib_priority = cfg->fc_priority;
|
||||
fi->fib_prefsrc = cfg->fc_prefsrc;
|
||||
fi->fib_type = cfg->fc_type;
|
||||
fi->fib_tb_id = cfg->fc_table;
|
||||
|
||||
fi->fib_nhs = nhs;
|
||||
change_nexthops(fi) {
|
||||
@@ -1337,18 +1338,21 @@ nla_put_failure:
|
||||
* referring to it.
|
||||
* - device went down -> we must shutdown all nexthops going via it.
|
||||
*/
|
||||
int fib_sync_down_addr(struct net *net, __be32 local)
|
||||
int fib_sync_down_addr(struct net_device *dev, __be32 local)
|
||||
{
|
||||
int ret = 0;
|
||||
unsigned int hash = fib_laddr_hashfn(local);
|
||||
struct hlist_head *head = &fib_info_laddrhash[hash];
|
||||
struct net *net = dev_net(dev);
|
||||
int tb_id = l3mdev_fib_table(dev);
|
||||
struct fib_info *fi;
|
||||
|
||||
if (!fib_info_laddrhash || local == 0)
|
||||
return 0;
|
||||
|
||||
hlist_for_each_entry(fi, head, fib_lhash) {
|
||||
if (!net_eq(fi->fib_net, net))
|
||||
if (!net_eq(fi->fib_net, net) ||
|
||||
fi->fib_tb_id != tb_id)
|
||||
continue;
|
||||
if (fi->fib_prefsrc == local) {
|
||||
fi->fib_flags |= RTNH_F_DEAD;
|
||||
|
Reference in New Issue
Block a user