Bug 468870 - initscripts upgrade from 8.45.17 to 8.45.19 breaks arp_ip_target
initscripts upgrade from 8.45.17 to 8.45.19 breaks arp_ip_target
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel (Show other bugs)
5.3
All Linux
medium Severity medium
: rc
: ---
Assigned To: Andy Gospodarek
Martin Jenner
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2008-10-28 10:40 EDT by Phil Knirsch
Modified: 2015-03-04 20:20 EST (History)
9 users (show)

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


Attachments (Terms of Use)
bonding-doc-fix2.patch (2.04 KB, patch)
2008-10-28 12:30 EDT, Andy Gospodarek
no flags Details | Diff

  None (edit)
Description Phil Knirsch 2008-10-28 10:40:50 EDT
+++ This bug was initially created as a clone of Bug #467954 +++

Description of problem:
The syntax change from bug #288151 causes an upgrade of initscripts from 8.45.17 to 8.45.19 to break bonding when using arp_ip_target

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

How reproducible:


Steps to Reproduce:
1. Setup a functional bonding configuration using arp_ip_target with initscripts-8.45.17.EL-1
2. Upgrade initscripts to initscripts-8.45.19.EL-1
  
Actual results:
Entry in /sys/class/net/bond0/bonding/arp_ip_target is now wrong.

Expected results:
Entry in /sys/class/net/bond0/bonding/arp_ip_target should have remained the same.

Additional info:
When upgrading from RHEL 5.1 with initscripts-8.45.17 to RHEL5.2 and initscripts-8.45.19 , the configuration of a bonded network interface needs to be re-written if arp_ip_target is being set in /etc/sysconfig/network-scripts/ifcfg-bond0

Also, the documentation included in kernel-doc-2.6.18-92.el5.noarch.rpm under /usr/share/doc/kernel-doc-2.6.18/Documentation/networking/bonding.txt states that using the +<arp_ip_target> syntax is correct.

"
For later versions of initscripts, such as that found with Fedora
7 and Red Hat Enterprise Linux version 5 (or later), it is possible, and,
indeed, preferable, to specify the bonding options in the ifcfg-bond0
file, e.g. a line of the format:

BONDING_OPTS="mode=active-backup arp_interval=60 arp_ip_target=+192.168.1.254"

        will configure the bond with the specified options.  The options
specified in BONDING_OPTS are identical to the bonding module parameters
except for the arp_ip_target field.  Each target should be included as a
separate option and should be preceded by a '+' to indicate it should be
added to the list of queried targets, e.g.,

        arp_ip_target=+192.168.1.1 arp_ip_target=+192.168.1.2

        is the proper syntax to specify multiple targets.
"

--- Additional comment from darcy.sherwood@gmail.com on 2008-10-21 18:26:26 EDT ---

I've written a patch that will handle both the syntax with and without the +

I tested the change, and I was able to specify arp_ip_target both with and without the plus, as well as in lists of formats "arp_ip_target=192.168.1.1,192.168.1.2" and "arp_ip_target=+192.168.1.1 arp_ip_target=+192.168.1.2"

diff ifup-eth ifup-eth-fix
129c129
<         if [ "${key}" = "arp_ip_target" ]; then
---
>         if [ "${key}" = "arp_ip_target" -a "${value:0:1}" != "+" ]; then

--- Additional comment from notting@redhat.com on 2008-10-21 19:48:33 EDT ---

Andy - did the wires get crossed on the way to the upstream docs somewhere?

I don't have a big issue with this, but it may not get in for a while due to scheduling.

--- Additional comment from notting@redhat.com on 2008-10-21 19:49:13 EDT ---

Well, considering working configs broke in 5.2, marking as a regression.

--- Additional comment from pm-rhel@redhat.com on 2008-10-21 19:49:58 EDT ---

This bugzilla has Keywords: Regression.  

Since no regressions are allowed between releases, 
it is also being proposed as a blocker for this release.  

Please resolve ASAP.

--- Additional comment from agospoda@redhat.com on 2008-10-22 11:48:31 EDT ---

I think the documentation just didn't get updated.  The intent was that we could specify:

arp_ip_target=10.0.0.1,10.0.0.2,10.0.0.3

going foward instead of

arp_ip_target=+10.0.0.1 arp_ip_target=+10.0.0.2 arp_ip_target=+10.0.0.3

in the BONDING_OPTS field in ifcfg-bondX.

I'll test now to make sure that works.

--- Additional comment from agospoda@redhat.com on 2008-10-22 12:45:51 EDT ---

Ok, so it appears the bug we wanted to fix (getting rid of the '+') is working as expected.  It seems we need to clarify the documentation in the kernel source tree so it is correct.  That should not be too tough to manage -- I'll get cracking on it.

--- Additional comment from casmith@redhat.com on 2008-10-22 15:10:05 EDT ---

I think that the issue is that the previous method, using the + signs, worked in 5.0 and 5.1 and are now broken in 5.2. So a user who got bonding working in 5.0 or 5.1 and updated their server to 5.2 would break their bonding configuration. It's my understanding that configuration files should not break between point releases the OS.

It appears that the patch that Darcy supplied will allow either format to work, which will fix the config file regression as well as allowing for the new format to work, the best of both worlds.

--- Additional comment from agospoda@redhat.com on 2008-10-22 15:32:01 EDT ---

Created an attachment (id=321205)
bonding-doc-fix.patch

I agree, Calvin, it would be nice to support both.

Unfortunately the fact that the '+' was needed was a bug itself.  I did not originally intend that we use it when I did the original initscripts patch for RHEL5.

When we discovered we needed the '+' in the configuration file, we went out and fixed it for 5.2 so the module options matched what was needed in ifcfg-bond0.

It's hard for me to call bugs that we fix 'regressions,' but I guess when customers rely on them that's how they feel.

Attached is the patch to the kernel documentation that should reflect our original intent.
Comment 1 Phil Knirsch 2008-10-28 10:41:34 EDT
Cloned bug for kernel-doc update from last comment.

Thanks & regards, Phil
Comment 3 Andy Gospodarek 2008-10-28 12:30:00 EDT
I've got a patch for this already and should it be easy enough to post -- just waiting for upstream acceptance....
Comment 4 Andy Gospodarek 2008-10-28 12:30:59 EDT
Created attachment 321705 [details]
bonding-doc-fix2.patch

proposed patch
Comment 8 Don Zickus 2008-11-12 11:37:46 EST
in kernel-2.6.18-123.el5
You can download this test kernel from http://people.redhat.com/dzickus/el5
Comment 10 Mike Gahagan 2008-12-08 12:39:16 EST
verified documentation change
Comment 12 errata-xmlrpc 2009-01-20 15:06:28 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/RHSA-2009-0225.html

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