4.18-stable review patch. If anyone has any objections, please let me know.
------------------
From: Nikolay Aleksandrov nikolay@cumulusnetworks.com
[ Upstream commit eddf016b910486d2123675a6b5fd7d64f77cdca8 ]
If the skb space ends in an unresolved entry while dumping we'll miss some unresolved entries. The reason is due to zeroing the entry counter between dumping resolved and unresolved mfc entries. We should just keep counting until the whole table is dumped and zero when we move to the next as we have a separate table counter.
Reported-by: Colin Ian King colin.king@canonical.com Fixes: 8fb472c09b9d ("ipmr: improve hash scalability") Signed-off-by: Nikolay Aleksandrov nikolay@cumulusnetworks.com Signed-off-by: David S. Miller davem@davemloft.net Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org --- net/ipv4/ipmr_base.c | 2 -- 1 file changed, 2 deletions(-)
--- a/net/ipv4/ipmr_base.c +++ b/net/ipv4/ipmr_base.c @@ -295,8 +295,6 @@ int mr_rtm_dumproute(struct sk_buff *skb next_entry: e++; } - e = 0; - s_e = 0;
spin_lock_bh(lock); list_for_each_entry(mfc, &mrt->mfc_unres_queue, list) {