X-Git-Url: https://git.proxmox.com/?p=pve-common.git;a=blobdiff_plain;f=src%2FPVE%2FINotify.pm;h=c2055b66aea80ff47d6b2deecf084d038a676e0d;hp=7fb3490c452862770dcb07c7eb70e12d079444ef;hb=fb3a6db16c82e2b911700cd5a362e7b4bec18d9a;hpb=f0d1b04fdad02d1a7348f1396d20003224690055 diff --git a/src/PVE/INotify.pm b/src/PVE/INotify.pm index 7fb3490..c2055b6 100644 --- a/src/PVE/INotify.pm +++ b/src/PVE/INotify.pm @@ -801,7 +801,7 @@ sub __read_etc_network_interfaces { if ($proc_net_dev) { while (defined ($line = <$proc_net_dev>)) { - if ($line =~ m/^\s*(eth\d+|en[^:.]+):.*/) { + if ($line =~ m/^\s*(eth\d+|en[^:.]+|ib\d+):.*/) { $ifaces->{$1}->{exists} = 1; } } @@ -974,7 +974,7 @@ sub __read_etc_network_interfaces { $ifaces->{$1}->{exists} = 0; $d->{exists} = 0; } - } elsif ($iface =~ m/^(?:eth\d+|en[^:.]+)$/) { + } elsif ($iface =~ m/^(?:eth\d+|en[^:.]+|ib\d+)$/) { if (!$d->{ovs_type}) { $d->{type} = 'eth'; } elsif ($d->{ovs_type} eq 'OVSPort') { @@ -1054,6 +1054,7 @@ sub __interface_to_string { # not printing out options } elsif ($d->{type} eq 'bridge') { + $d->{bridge_ports} =~ s/[;,\s]+/ /g; my $ports = $d->{bridge_ports} || 'none'; $raw .= "\tbridge_ports $ports\n"; $done->{bridge_ports} = 1; @@ -1073,6 +1074,7 @@ sub __interface_to_string { } elsif ($d->{type} eq 'bond') { + $d->{slaves} =~ s/[;,\s]+/ /g; my $slaves = $d->{slaves} || 'none'; $raw .= "\tslaves $slaves\n"; $done->{slaves} = 1; @@ -1201,7 +1203,7 @@ sub __write_etc_network_interfaces { $d->{type} eq 'OVSBond') { my $brname = $used_ports->{$iface}; if (!$brname || !$ifaces->{$brname}) { - if ($iface =~ /^(?:eth|en)/) { + if ($iface =~ /^(?:eth|en|ib)/) { $ifaces->{$iface} = { type => 'eth', exists => 1, method => 'manual', @@ -1290,7 +1292,7 @@ NETWORKDOC my $pri; if ($iface eq 'lo') { $pri = $if_type_hash->{loopback}; - } elsif ($iface =~ m/^(?:eth\d+|en[^:.]+)$/) { + } elsif ($iface =~ m/^(?:eth\d+|ib\d+|en[^:.]+)$/) { $pri = $if_type_hash->{eth} + $child; } elsif ($iface =~ m/^bond\d+$/) { $pri = $if_type_hash->{bond} + $child;