[Devel] [RFC 42/54] dev: fix CONFIG_VE=n build

Eva Kurchatova eva.kurchatova at virtuozzo.com
Wed Apr 29 22:58:42 MSK 2026


Signed-off-by: Eva Kurchatova <eva.kurchatova at virtuozzo.com>
---
 net/core/dev.c | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/net/core/dev.c b/net/core/dev.c
index b3b2e305ae3e..c5c26abdfb35 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -10464,7 +10464,7 @@ int register_netdevice(struct net_device *dev)
 	ret = ethtool_check_ops(dev->ethtool_ops);
 	if (ret)
 		return ret;
-
+#ifdef CONFIG_VE
 	ret = -ENOMEM;
 	if (atomic_dec_if_positive(&net->owner_ve->netif_avail_nr) < 0) {
 		ve_pr_warn_ratelimited(VE_LOG_BOTH,
@@ -10473,7 +10473,7 @@ int register_netdevice(struct net_device *dev)
 			ve_name(net->owner_ve));
 		return ret;
 	}
-
+#endif
 	/* rss ctx ID 0 is reserved for the default context, start from 1 */
 	xa_init_flags(&dev->ethtool->rss_ctx, XA_FLAGS_ALLOC1);
 	mutex_init(&dev->ethtool->rss_lock);
@@ -10499,13 +10499,13 @@ int register_netdevice(struct net_device *dev)
 			goto err_free_name;
 		}
 	}
-
+#ifdef CONFIG_VE
 	/* Keep the check after .ndo_init() call. */
 	if (!ve_is_super(net->owner_ve) && ve_is_dev_movable(dev)) {
 		ret = -EPERM;
 		goto err_uninit;
 	}
-
+#endif
 	if (((dev->hw_features | dev->features) &
 	     NETIF_F_HW_VLAN_CTAG_FILTER) &&
 	    (!dev->netdev_ops->ndo_vlan_rx_add_vid ||
@@ -10637,7 +10637,9 @@ int register_netdevice(struct net_device *dev)
 err_free_name:
 	netdev_name_node_free(dev->name_node);
 out_inc:
+#ifdef CONFIG_VE
 	atomic_inc(&net->owner_ve->netif_avail_nr);
+#endif
 	goto out;
 }
 EXPORT_SYMBOL(register_netdevice);
@@ -10896,7 +10898,9 @@ void netdev_run_todo(void)
 			free_netdev(dev);
 
 		cnt++;
+#ifdef CONFIG_VE
 		atomic_inc(&dev_net(dev)->owner_ve->netif_avail_nr);
+#endif
 
 		/* Free network device */
 		kobject_put(&dev->dev.kobj);
@@ -11643,7 +11647,7 @@ int __dev_change_net_namespace(struct net_device *dev, struct net *net,
 			goto out;
 		new_ifindex = err;
 	}
-
+#ifdef CONFIG_VE
 	err = -ENOMEM;
 	if (atomic_dec_if_positive(&net->owner_ve->netif_avail_nr) < 0) {
 		ve_pr_warn_ratelimited(VE_LOG_BOTH,
@@ -11653,6 +11657,7 @@ int __dev_change_net_namespace(struct net_device *dev, struct net *net,
 		goto out;
 	}
 	atomic_inc(&dev_net(dev)->owner_ve->netif_avail_nr);
+#endif
 
 	/*
 	 * And now a mini version of register_netdevice unregister_netdevice.
-- 
2.54.0



More information about the Devel mailing list