This service will be undergoing maintenance at 00:00 UTC, 2016-09-28. It is expected to last about 1 hours
Bug 331661 - Bond slaves other than eth* are ignored by rgmanager
Bond slaves other than eth* are ignored by rgmanager
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: rgmanager (Show other bugs)
5.0
All Linux
low Severity low
: ---
: ---
Assigned To: Lon Hohberger
Cluster QE
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2007-10-15 00:15 EDT by Thomas Pek
Modified: 2009-04-16 18:55 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-01-20 15:57:08 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)
Use position rather than pattern-match for slave devices. (881 bytes, patch)
2008-03-04 18:11 EST, Lon Hohberger
no flags Details | Diff
Better patch. Slightly more efficient, and functionally-tested (859 bytes, patch)
2008-03-11 14:47 EDT, Lon Hohberger
no flags Details | Diff

  None (edit)
Description Thomas Pek 2007-10-15 00:15:22 EDT
Description of problem:
When using bonding, the ip.sh script only works with slave interfaces which
start with eth*. It fails to get status on other bonded interfaces, like
for example Infiniband (ib*).

Version-Release number of selected component (if applicable):
rgmanager-2.0.24-1.el5

How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:
Comment 1 Lon Hohberger 2007-11-09 15:25:57 EST
Could you give me 'ip addr list' for a bonded infiniband configuration?
Comment 2 Thomas Pek 2007-11-11 22:06:46 EST
We have decided to run without ib bonding so I can't send you the
requested output.  

The problem seems to be with the /usr/share/cluster/ip.sh script
in the findSlaves() function. It only recognizes eth* devices:

----------------------------------------------------------------
 while read line; do
                set - $line
                while [ $# -gt 0 ]; do
                        case $1 in
                        eth*:)
                                interfaces="${1/:/} $interfaces"
                                continue 2
                                ;;
                        esac
                        shift
                done
        done < <( /sbin/ip link list | grep "master $mastif" )
--------------------------------------------------------------------

Our original configuration had a master device bond1 and 2 slave 
devices ib0 and ib1. 
Comment 3 Lon Hohberger 2007-11-13 11:44:45 EST
That's the part I thought was suspect too.

Comment 4 Kiersten (Kerri) Anderson 2007-11-19 14:57:32 EST
All cluster version 5 defects should be reported under red hat enterprise linux
5 product name - not cluster suite.
Comment 5 Lon Hohberger 2008-03-04 18:11:51 EST
Created attachment 296827 [details]
Use position rather than pattern-match for slave devices.
Comment 6 Lon Hohberger 2008-03-04 18:13:15 EST
Note that link detection won't work on non-ethernet devices anyway, so I'm not
sure how much this patch would help.
Comment 7 Lon Hohberger 2008-03-11 13:15:21 EDT
interfaces=$(/sbin/ip link list | grep "master $mastif" | awk '{print $2}'})      

should obviate the need for the loop entirely.
Comment 9 Lon Hohberger 2008-03-11 14:47:47 EDT
Created attachment 297657 [details]
Better patch.  Slightly more efficient, and functionally-tested
Comment 13 errata-xmlrpc 2009-01-20 15:57:08 EST
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2009-0101.html

Note You need to log in before you can comment on or make changes to this bug.