Re: linux-next: manual merge of the net-next tree with the net tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> writes:

> diff --cc drivers/net/vxlan.c
> index 0565f8880199,71c3b7b6b1ab..000000000000
> --- a/drivers/net/vxlan.c
> +++ b/drivers/net/vxlan.c
> @@@ -3297,16 -3483,9 +3484,16 @@@ static int __vxlan_dev_create(struct ne
>   
>   	list_add(&vxlan->next, &vn->vxlan_list);
>   	return 0;
>  +
>   errout:
>  +	/* unregister_netdevice() destroys the default FDB entry with deletion
>  +	 * notification. But the addition notification was not sent yet, so
>  +	 * destroy the entry by hand here.
>  +	 */
>   	if (f)
> - 		vxlan_fdb_destroy(vxlan, f, false);
> + 		vxlan_fdb_destroy(vxlan, f, false, false);
>  +	if (unregister)
>  +		unregister_netdevice(dev);
>   	return err;
>   }
>   
> @@@ -3540,8 -3719,10 +3727,9 @@@ static int vxlan_changelink(struct net_
>   {
>   	struct vxlan_dev *vxlan = netdev_priv(dev);
>   	struct vxlan_rdst *dst = &vxlan->default_dst;
> + 	unsigned long old_age_interval;
>   	struct vxlan_rdst old_dst;
>   	struct vxlan_config conf;
>  -	struct vxlan_fdb *f = NULL;
>   	int err;
>   
>   	err = vxlan_nl2conf(tb, data,
> @@@ -3564,13 -3749,13 +3756,14 @@@
>   					   vxlan->cfg.dst_port,
>   					   old_dst.remote_vni,
>   					   old_dst.remote_vni,
> - 					   old_dst.remote_ifindex, 0);
> + 					   old_dst.remote_ifindex,
> + 					   true);
>   
>   		if (!vxlan_addr_any(&dst->remote_ip)) {
>  -			err = vxlan_fdb_create(vxlan, all_zeros_mac,
>  +			err = vxlan_fdb_update(vxlan, all_zeros_mac,
>   					       &dst->remote_ip,
>   					       NUD_REACHABLE | NUD_PERMANENT,
>  +					       NLM_F_APPEND | NLM_F_CREATE,
>   					       vxlan->cfg.dst_port,
>   					       dst->remote_vni,
>   					       dst->remote_vni,

The above looks correct, but the last hunk has one non-conflicting line
that nonetheless needs fixing up:

diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index efd709a5e3a8..5209ee9aac47 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -3768,7 +3768,7 @@ static int vxlan_changelink(struct net_device *dev, struct nlattr *tb[],
                                               dst->remote_vni,
                                               dst->remote_vni,
                                               dst->remote_ifindex,
-                                              NTF_SELF);
+                                              NTF_SELF, true);
                        if (err) {
                                spin_unlock_bh(&vxlan->hash_lock);
                                return err;

Thanks!




[Index of Archives]     [Linux Kernel]     [Linux USB Development]     [Yosemite News]     [Linux SCSI]

  Powered by Linux