naccyde / rpms / iproute

Forked from rpms/iproute 5 months ago
Clone

Blame SOURCES/0006-ipaddress-fix-ipaddr_flush-for-Linux-3.1.patch

049c96
From 09bf564447edb4b024c0db0bd1c6b6aa43974a08 Mon Sep 17 00:00:00 2001
049c96
From: Phil Sutter <psutter@redhat.com>
049c96
Date: Wed, 17 Feb 2016 14:05:14 +0100
049c96
Subject: [PATCH] ipaddress: fix ipaddr_flush for Linux >= 3.1
049c96
049c96
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1291825
049c96
Upstream Status: commit d25ec03e1dce4
049c96
049c96
commit d25ec03e1dce4cf22093a9f7106e9401ab5bf066
049c96
Author: Phil Sutter <phil@nwl.cc>
049c96
Date:   Tue Nov 24 15:31:02 2015 +0100
049c96
049c96
    ipaddress: fix ipaddr_flush for Linux >= 3.1
049c96
049c96
    Linux version 3.1 introduced a consistency check for netlink dumps in
049c96
    commit 670dc28 ("netlink: advertise incomplete dumps"). This bites
049c96
    iproute2 when flushing more addresses than can fit into a single
049c96
    RTM_GETADDR response. To silence the spurious error message "Dump was
049c96
    interrupted and may be inconsistent.", advise rtnl_dump_filter_l() to
049c96
    not care about NLM_F_DUMP_INTR.
049c96
049c96
    Signed-off-by: Phil Sutter <phil@nwl.cc>
049c96
---
049c96
 ip/ipaddress.c | 3 ++-
049c96
 1 file changed, 2 insertions(+), 1 deletion(-)
049c96
049c96
diff --git a/ip/ipaddress.c b/ip/ipaddress.c
049c96
index 6f50354..197f5ae 100644
049c96
--- a/ip/ipaddress.c
049c96
+++ b/ip/ipaddress.c
049c96
@@ -1132,7 +1132,8 @@ static int ipaddr_flush(void)
049c96
 			exit(1);
049c96
 		}
049c96
 		filter.flushed = 0;
049c96
-		if (rtnl_dump_filter(&rth, print_addrinfo, stdout) < 0) {
049c96
+		if (rtnl_dump_filter_nc(&rth, print_addrinfo,
049c96
+					stdout, NLM_F_DUMP_INTR) < 0) {
049c96
 			fprintf(stderr, "Flush terminated\n");
049c96
 			exit(1);
049c96
 		}
049c96
-- 
049c96
1.8.3.1
049c96