Since the renaming of virtual functions is now handled dynamically via
a custom udev rule, proxmox-network-interface-pinning needs to
additionally filter all existing virtual functions when pinning
network interface names, since otherwise they would also get a pinned
name.

Signed-off-by: Stefan Hanreich <s.hanre...@proxmox.com>
---
 PVE/CLI/proxmox_network_interface_pinning.pm | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/PVE/CLI/proxmox_network_interface_pinning.pm 
b/PVE/CLI/proxmox_network_interface_pinning.pm
index 382e2d94b..01b94af2a 100644
--- a/PVE/CLI/proxmox_network_interface_pinning.pm
+++ b/PVE/CLI/proxmox_network_interface_pinning.pm
@@ -304,12 +304,19 @@ sub get_ip_link_mac {
     return $ip_link->{link_info}->{info_slave_data}->{perm_hwaddr} // 
$ip_link->{address};
 }
 
+sub iface_is_vf {
+    my ($iface_name) = @_;
+
+    return -l "/sys/class/net/$iface_name/device/physfn";
+}
+
 sub get_ip_links {
     my $ip_links = PVE::Network::ip_link_details();
 
     for my $iface_name (keys $ip_links->%*) {
         delete $ip_links->{$iface_name}
-            if !PVE::Network::ip_link_is_physical($ip_links->{$iface_name});
+            if !PVE::Network::ip_link_is_physical($ip_links->{$iface_name})
+            || iface_is_vf($iface_name);
     }
 
     return $ip_links;
-- 
2.39.5


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to