vxlan: fix error return code in __vxlan_dev_create()
authorZhang Changzhong <zhangchangzhong@huawei.com>
Wed, 2 Dec 2020 09:58:42 +0000 (17:58 +0800)
committerJakub Kicinski <kuba@kernel.org>
Thu, 3 Dec 2020 02:04:02 +0000 (18:04 -0800)
Fix to return a negative error code from the error handling
case instead of 0, as done elsewhere in this function.

Fixes: 0ce1822c2a08 ("vxlan: add adjacent link to limit depth level")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Zhang Changzhong <zhangchangzhong@huawei.com>
Link: https://lore.kernel.org/r/1606903122-2098-1-git-send-email-zhangchangzhong@huawei.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/vxlan.c

index 032f78261913d3a9df8933f43d6fa7478d296067..977f77e2c2ce61fe56340002212017ddd20fbcd6 100644 (file)
@@ -3880,8 +3880,10 @@ static int __vxlan_dev_create(struct net *net, struct net_device *dev,
 
        if (dst->remote_ifindex) {
                remote_dev = __dev_get_by_index(net, dst->remote_ifindex);
-               if (!remote_dev)
+               if (!remote_dev) {
+                       err = -ENODEV;
                        goto errout;
+               }
 
                err = netdev_upper_dev_link(remote_dev, dev, extack);
                if (err)