From: Zhang Shengju Date: Sat, 19 Nov 2016 15:28:32 +0000 (+0800) Subject: rtnl: fix the loop index update error in rtnl_dump_ifinfo() X-Git-Tag: v4.8.14~36 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=58c8cc33de6caa707cec2008782f918432668962;p=thirdparty%2Fkernel%2Fstable.git rtnl: fix the loop index update error in rtnl_dump_ifinfo() [ Upstream commit 3f0ae05d6fea0ed5b19efdbc9c9f8e02685a3af3 ] If the link is filtered out, loop index should also be updated. If not, loop index will not be correct. Fixes: dc599f76c22b0 ("net: Add support for filtering link dump by master device and kind") Signed-off-by: Zhang Shengju Acked-by: David Ahern Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c index 9b39088e9077c..08c3702f70743 100644 --- a/net/core/rtnetlink.c +++ b/net/core/rtnetlink.c @@ -1578,7 +1578,7 @@ static int rtnl_dump_ifinfo(struct sk_buff *skb, struct netlink_callback *cb) head = &net->dev_index_head[h]; hlist_for_each_entry(dev, head, index_hlist) { if (link_dump_filtered(dev, master_idx, kind_ops)) - continue; + goto cont; if (idx < s_idx) goto cont; err = rtnl_fill_ifinfo(skb, dev, RTM_NEWLINK,