Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
For bugs related to Red Hat Enterprise Linux 5 product line. The current stable release is 5.10. For Red Hat Enterprise Linux 6 and above, please visit Red Hat JIRA https://issues.redhat.com/secure/CreateIssue!default.jspa?pid=12332745 to report new issues.

Bug 648523

Summary: DEVICETYPE isn't calculated correctly for IPoIB child interfaces
Product: Red Hat Enterprise Linux 5 Reporter: Moni Shoua <monis>
Component: initscriptsAssignee: initscripts Maintenance Team <initscripts-maint-list>
Status: CLOSED DUPLICATE QA Contact: qe-baseos-daemons
Severity: medium Docs Contact:
Priority: low    
Version: 5.4CC: notting
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-03-18 20:56:37 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 Moni Shoua 2010-11-01 14:52:08 UTC
Description of problem:
IPoIB child interface is a network interface over InfiniBand that works with the non default partition (i.e. not 0xffff). The name format of a child interface is ibX.abcd where X is the index of the HCA/port and abcd is the partition.
For the default partition the name of the interface is simply ibX (the .ffff is not present)
 
Now, the variable DEVICETYPE is calculated in 2 steps
1. if the TYPE variable is defined in ifcfg-ibX.abcd then DEVICETYPE is gets a value via a translation list
2. if step 1. yields not result then the value is calculated from the interface name by omitting the digits (e.g. ib0 --> ib)

Later on the variable DEVICETYPE is used to handle the specific interface according to it's special needs. For instance calling ifup-${DEVICETYPE}

For IPoIB child interface the calculation of DEVICETYPE gives wrong value (should be ib) since there is no translation for TYPE=InfiniBand (step 1.) and the formula of omitting the digits is wrong (it doesn't ommit the . )

The results can be various, for example:  not calling ifup-ib and ifdown-ib as required.

Version-Release number of selected component (if applicable):

8.45.30

How reproducible:
Create a configuration for ib0.8001 and see that it is not carried out

Steps to Reproduce:
1. Install openib-1.4.1-3.el5.noarch.rpm (to get ifup-ib)
2. edit a configuration for ib0.8001
3. load IPoIB by modprobe ib_ipoib
4. create ib0.8001 by echo 0x8001 > /sys/class/net/ib0/create_child
5. run ifup ib0.8001
  
Actual results:

script /etc/sysconfig/network-scripts/ifup-eth is called

Expected results:
script /etc/sysconfig/network-scripts/ifup-eth


Additional info:
A suggested fix is attached in a patch format.

Comment 1 Bill Nottingham 2011-03-18 20:56:37 UTC

*** This bug has been marked as a duplicate of bug 648524 ***