[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1479305343-13167-1-git-send-email-jiri@resnulli.us>
Date: Wed, 16 Nov 2016 15:08:55 +0100
From: Jiri Pirko <jiri@...nulli.us>
To: netdev@...r.kernel.org
Cc: davem@...emloft.net, idosch@...lanox.com, eladr@...lanox.com,
yotamg@...lanox.com, nogahf@...lanox.com, arkadis@...lanox.com,
ogerlitz@...lanox.com, roopa@...ulusnetworks.com,
dsa@...ulusnetworks.com, nikolay@...ulusnetworks.com,
andy@...yhouse.net, vivien.didelot@...oirfairelinux.com,
andrew@...n.ch, f.fainelli@...il.com, alexander.h.duyck@...el.com,
kuznet@....inr.ac.ru, jmorris@...ei.org, yoshfuji@...ux-ipv6.org,
kaber@...sh.net
Subject: [patch net-next 0/8] ipv4: fib: Allow modules to dump FIB tables
From: Jiri Pirko <jiri@...lanox.com>
Ido says:
In kernel 4.9 the switchdev-specific FIB offload mechanism was replaced
by a new FIB notification chain to which modules could register in order
to be notified about the addition and deletion of FIB entries. The
motivation for this change was that switchdev drivers need to be able to
reflect the entire FIB table and not only FIBs configured on top of the
port netdevs themselves. This is useful in case of in-band management.
The fundamental problem with this approach is that upon registration
listeners lose all the information previously sent in the chain and
thus have an incomplete view of the FIB tables, which can result in
packet loss. This patchset fixes that by introducing a new API to dump
the FIB tables.
The entire dump process is done under RCU and thus the FIB notification
chain is converted to be atomic. The listeners are modified accordingly.
This is done in the first five patches.
The sixth patch adds the dump callback itself and the next patches call
it from current listeners of the FIB notification chain.
Ido Schimmel (8):
ipv4: fib: Export free_fib_info()
mlxsw: spectrum_router: Implement FIB offload in delayed work
rocker: Implement FIB offload in delayed work
ipv4: fib: Convert FIB notification chain to be atomic
net: ipv4: Send notifications only after removing FIB alias
ipv4: fib: Add an API to request a FIB dump
mlxsw: spectrum_router: Request a dump of FIB tables during init
rocker: Request a dump of FIB tables during init
drivers/net/ethernet/mellanox/mlxsw/core.c | 6 +
drivers/net/ethernet/mellanox/mlxsw/core.h | 1 +
.../net/ethernet/mellanox/mlxsw/spectrum_router.c | 73 ++++++++++--
drivers/net/ethernet/rocker/rocker_main.c | 59 ++++++++--
drivers/net/ethernet/rocker/rocker_ofdpa.c | 1 +
include/net/ip_fib.h | 1 +
net/ipv4/fib_semantics.c | 1 +
net/ipv4/fib_trie.c | 128 +++++++++++++++++++--
8 files changed, 242 insertions(+), 28 deletions(-)
--
2.7.4
Powered by blists - more mailing lists