Bug 608652

Summary: interface naming for virtual NICs seems inconsistent
Product: Red Hat Enterprise Linux 6 Reporter: Stefan Assmann <sassmann>
Component: udevAssignee: Harald Hoyer <harald>
Status: CLOSED CANTFIX QA Contact: qe-baseos-daemons
Severity: medium Docs Contact:
Priority: low    
Version: 6.0CC: pknirsch
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-07-08 11:15:52 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Stefan Assmann 2010-06-28 11:50:53 UTC
Description of problem:
test system intel-sunriseridge-01.lab.bos.redhat.com

modprobe igb max_vfs=0
ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:13:20:F7:A5:9E
          inet addr:10.16.42.238  Bcast:10.16.47.255  Mask:255.255.248.0
          inet6 addr: fe80::213:20ff:fef7:a59e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1785 errors:0 dropped:0 overruns:1 frame:0
          TX packets:132 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:167235 (163.3 KiB)  TX bytes:15706 (15.3 KiB)
          Memory:91a20000-91a40000

eth1      Link encap:Ethernet  HWaddr 00:13:20:F7:A5:9F
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b) 
          Memory:91a00000-91a20000

eth2      Link encap:Ethernet  HWaddr 00:13:20:F7:A5:A0  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Memory:91920000-91940000 

eth3      Link encap:Ethernet  HWaddr 00:13:20:F7:A5:A1  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Memory:91900000-91920000 

followed by modprobe -r igb; modprobe igb max_vfs=1
ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:13:20:F7:A5:9E
          inet addr:10.16.42.238  Bcast:10.16.47.255  Mask:255.255.248.0
          inet6 addr: fe80::213:20ff:fef7:a59e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:337 errors:0 dropped:0 overruns:0 frame:0
          TX packets:35 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:40246 (39.3 KiB)  TX bytes:4481 (4.3 KiB)
          Memory:91a20000-91a40000 

eth1      Link encap:Ethernet  HWaddr 0A:CF:41:69:F7:A9  
          inet addr:10.16.47.194  Bcast:10.16.47.255  Mask:255.255.248.0
          inet6 addr: fe80::8cf:41ff:fe69:f7a9/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:325 errors:0 dropped:0 overruns:0 frame:0
          TX packets:19 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:36117 (35.2 KiB)  TX bytes:3003 (2.9 KiB)

eth2      Link encap:Ethernet  HWaddr 3A:FE:20:4C:2A:3B  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

eth3      Link encap:Ethernet  HWaddr C6:C3:B1:56:C9:A4  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

eth3_rename Link encap:Ethernet  HWaddr 00:13:20:F7:A5:9F  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Memory:91a00000-91a20000 

eth4      Link encap:Ethernet  HWaddr 6E:8A:8A:A3:5F:69  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

eth4_rename Link encap:Ethernet  HWaddr 00:13:20:F7:A5:A0  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Memory:91920000-91940000 

eth5_rename Link encap:Ethernet  HWaddr 00:13:20:F7:A5:A1  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Memory:91900000-91920000 

Looks like the first virtual interface gets named eth4 followed by eth3_rename, eth4_rename and eth5_rename.


note: when setting max_vfs=1 at boot time via /etc/modprobe.d/igb.conf for example interfaces are named eth0 - eth7. However doing another modprobe -r igb; modprobe igb max_vfs=1 shows eth0 - eth3 and eth1_rename - eth4_rename.

Version-Release number of selected component (if applicable):
udev-147-2.18.el6.x86_64

How reproducible:
always

Comment 2 RHEL Program Management 2010-06-28 12:03:02 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux major release.  Product Management has requested further
review of this request by Red Hat Engineering, for potential inclusion in a Red
Hat Enterprise Linux Major release.  This request is not yet committed for
inclusion.

Comment 3 Harald Hoyer 2010-06-28 13:05:31 UTC
solution:

specify a /etc/sysconfig/ifcfg-eth* file with mac binding (HWADDR) for every interface or rename your network interfaces to "net[0-9]*" (ifcfg-<name> and DEVICE=<name>)

Comment 4 Stefan Assmann 2010-06-28 13:12:35 UTC
hmm, these virtual interfaces get a new MAC address every reboot, so binding to MAC address might not be a good way of handling this. First of all I'm wondering why the interface naming is different after reloading the module.

Comment 5 Phil Knirsch 2010-07-07 14:12:05 UTC
How could you then uniquely identify interfaces to determine which is responsible for what network/client?

And just going by the ethX name is a recipe for disaster as we've seen numerous times in the past and one of the main reasons why uuids for storage devices are now being used instead of hdX, sdX or whatever kernel naming is being done.

Thanks & regards, Phil