From: Roland Dreier <roland@kernel.org>
To: netdev@vger.kernel.org, stable@vger.kernel.org
Cc: Roland Dreier <roland@purestorage.com>
Subject: [PATCH 3.19 and earlier] fib_rules: Fix dump_rules() not to exit early
Date: Mon, 5 Oct 2015 10:29:28 -0700 [thread overview]
Message-ID: <1444066168-5566-1-git-send-email-roland@kernel.org> (raw)
From: Roland Dreier <roland@purestorage.com>
Backports of 41fc014332d9 ("fib_rules: fix fib rule dumps across
multiple skbs") introduced a regression in "ip rule show" - it ends up
dumping the first rule over and over and never exiting, because 3.19
and earlier are missing commit 053c095a82cf ("netlink: make
nlmsg_end() and genlmsg_end() void"), so fib_nl_fill_rule() ends up
returning skb->len (i.e. > 0) in the success case.
Fix this by checking the return code for < 0 instead of != 0.
Signed-off-by: Roland Dreier <roland@purestorage.com>
---
Hi, this is needed for all stable trees earlier than 4.0 that have
picked up 41fc014332d9; so far looks like at least 3.10.y and 3.14.y
have made such releases.
net/core/fib_rules.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/core/fib_rules.c b/net/core/fib_rules.c
index 627e517077e4..84340a2605ed 100644
--- a/net/core/fib_rules.c
+++ b/net/core/fib_rules.c
@@ -606,7 +606,7 @@ static int dump_rules(struct sk_buff *skb, struct netlink_callback *cb,
err = fib_nl_fill_rule(skb, rule, NETLINK_CB(cb->skb).portid,
cb->nlh->nlmsg_seq, RTM_NEWRULE,
NLM_F_MULTI, ops);
- if (err)
+ if (err < 0)
break;
skip:
idx++;
--
2.5.0
next reply other threads:[~2015-10-05 17:29 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-05 17:29 Roland Dreier [this message]
2015-10-05 21:50 ` [PATCH 3.19 and earlier] fib_rules: Fix dump_rules() not to exit early Jiri Slaby
2015-10-08 12:50 ` Ben Hutchings
2015-10-09 14:33 ` Thomas Jarosch
2015-10-18 0:12 ` Greg KH
2015-10-18 0:34 ` Patch "fib_rules: Fix dump_rules() not to exit early" has been added to the 3.14-stable tree gregkh
2015-10-18 0:51 ` Patch "fib_rules: Fix dump_rules() not to exit early" has been added to the 3.10-stable tree gregkh
2015-10-19 10:24 ` [PATCH 3.19 and earlier] fib_rules: Fix dump_rules() not to exit early Luis Henriques
2015-10-19 10:24 ` Luis Henriques
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1444066168-5566-1-git-send-email-roland@kernel.org \
--to=roland@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=roland@purestorage.com \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.