From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Ahern Subject: [PATCH net-next 0/9] net: Kernel side filtering for route dumps Date: Thu, 11 Oct 2018 08:06:18 -0700 Message-ID: <20181011150627.4010-1-dsahern@kernel.org> Cc: David Ahern To: netdev@vger.kernel.org, davem@davemloft.net Return-path: Received: from mail.kernel.org ([198.145.29.99]:43870 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727141AbeJKWeE (ORCPT ); Thu, 11 Oct 2018 18:34:04 -0400 Sender: netdev-owner@vger.kernel.org List-ID: From: David Ahern Implement kernel side filtering of route dumps by protocol (e.g., which routing daemon installed the route), route type (e.g., unicast), table id and nexthop device. iproute2 has been doing this filtering in userspace for years; pushing the filters to the kernel side reduces the amount of data the kernel sends and reduces wasted cycles on both sides processing unwanted data. These initial options provide a huge improvement for efficiently examining routes on large scale systems. David Ahern (9): net: Add struct for fib dump filter net/ipv4: Plumb support for filtering route dumps net/ipv6: Plumb support for filtering route dumps net/mpls: Plumb support for filtering route dumps net: Plumb support for filtering ipv4 and ipv6 multicast route dumps net: Enable kernel side filtering of route dumps net/mpls: Handle kernel side filtering of route dumps net/ipv6: Bail early if user only wants cloned entries net/ipv4: Bail early if user only wants prefix entries include/linux/mroute_base.h | 5 +-- include/net/ip6_route.h | 1 + include/net/ip_fib.h | 14 ++++++-- net/ipv4/fib_frontend.c | 64 +++++++++++++++++++++++++++------ net/ipv4/fib_trie.c | 37 +++++++++++++------ net/ipv4/ipmr.c | 8 +++-- net/ipv4/ipmr_base.c | 33 ++++++++++++++++- net/ipv6/ip6_fib.c | 17 +++++++-- net/ipv6/ip6mr.c | 7 ++-- net/ipv6/route.c | 40 ++++++++++++++++----- net/mpls/af_mpls.c | 86 +++++++++++++++++++++++++++++++++++++++------ 11 files changed, 262 insertions(+), 50 deletions(-) -- 2.11.0