Bug 1291825

Summary: iproute: 'ip addr flush' failed to send flush request: Cannot assign requested address
Product: Red Hat Enterprise Linux 7 Reporter: Phil Sutter <psutter>
Component: iprouteAssignee: Phil Sutter <psutter>
Status: CLOSED ERRATA QA Contact: Jaroslav Aster <jaster>
Severity: medium Docs Contact: Mirek Jahoda <mjahoda>
Priority: high    
Version: 7.3CC: jaster, jiji, jishi, kzhang, mmarusic, network-qe, psutter
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: iproute-3.10.0-56.el7 Doc Type: Deprecated Functionality
Doc Text:
The *libnetlink* library contained in the _iproute-devel_ package has been deprecated. The user should use the *libnl* and *libmnl* libraries instead.
Story Points: ---
Clone Of: 1276591 Environment:
Last Closed: 2016-11-03 23:37:42 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1276591    
Bug Blocks: 1301628, 1313485    

Comment 3 Jaroslav Aster 2016-05-19 16:26:56 UTC
Hi Phil,

could you be more specific where is the issue on rhel-7? My test for rhel-6 does not work on rhel-7.

I see these messages on the old version and nothing on the new version of iproute. Are these messages a one of the aspect of the bug?

:: [  BEGIN   ] :: Try to flush test-iface :: actually running 'ip addr flush dev test-iface |& tee flush.log'
Dump was interrupted and may be inconsistent.
Dump was interrupted and may be inconsistent.
Dump was interrupted and may be inconsistent.

Comment 4 Phil Sutter 2016-05-20 14:05:12 UTC
Hi Jaroslav,

Yes, the error message is what I had in mind when writing this bug's description. The additional commit to backport was:

commit d25ec03e1dce4cf22093a9f7106e9401ab5bf066
Author: Phil Sutter <phil>
Date:   Tue Nov 24 15:31:02 2015 +0100

    ipaddress: fix ipaddr_flush for Linux >= 3.1
    
    Linux version 3.1 introduced a consistency check for netlink dumps in
    commit 670dc28 ("netlink: advertise incomplete dumps"). This bites
    iproute2 when flushing more addresses than can fit into a single
    RTM_GETADDR response. To silence the spurious error message "Dump was
    interrupted and may be inconsistent.", advise rtnl_dump_filter_l() to
    not care about NLM_F_DUMP_INTR.
    
    Signed-off-by: Phil Sutter <phil>

What does "does not work on rhel-7" mean precisely? If I'm not mistaken, iproute-3.10.0-55.el7 should behave just like described in the original bug, namely printing "Failed to send flush request: Cannot assign requested address" error message when flushing many ip addresses. Do you disagree?

Thanks, Phil

Comment 5 Jaroslav Aster 2016-05-20 15:12:33 UTC
Hi Phil,

"does not work on rhel-7" means my test does not work on rhel-7, because I use this code

rlAssertNotGrep "Failed to send flush request" flush.log
rlAssertNotGrep "Flush terminated" flush.log

Iproute on rhel-7 does not print these messages. It prints only "Dump was interrupted and may be inconsistent." I'm going to fix my test.

Comment 8 errata-xmlrpc 2016-11-03 23:37:42 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-2162.html