]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
rtnl: fix the loop index update error in rtnl_dump_ifinfo()
authorZhang Shengju <zhangshengju@cmss.chinamobile.com>
Sat, 19 Nov 2016 15:28:32 +0000 (23:28 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 10 Dec 2016 18:09:38 +0000 (19:09 +0100)
[ 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 <zhangshengju@cmss.chinamobile.com>
Acked-by: David Ahern <dsa@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/core/rtnetlink.c

index 9b39088e9077c4d6da8b0f1d0193bafdbdc265e2..08c3702f70743d3fbd81da2d1f54a10ef77c50de 100644 (file)
@@ -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,