]> git.proxmox.com Git - mirror_frr.git/commit - zebra/zebra_rib.c
zebra: start dataplane layer work
authorMark Stapp <mjs@voltanet.io>
Wed, 23 May 2018 16:20:43 +0000 (12:20 -0400)
committerMark Stapp <mjs@voltanet.io>
Thu, 25 Oct 2018 12:34:30 +0000 (08:34 -0400)
commit7cdb1a8445ecff8ad0f2eb532df5eb2112d921e0
treefb34cd690dff402df2e4f5323d697f18582b2cfc
parent6cd85474f80492d4721966610357109593ae4ab9
zebra: start dataplane layer work

Reduce or eliminate use of global zebra_ns structs in
a couple of netlink/kernel code paths, so that those paths
can potentially be made asynch eventually.

Slide netlink_talk_info into place to remove dependency on core
zebra structs; add accessors for dplane context block

Start init of route context from zebra core re and rn structs;
start queueing and event handling for incoming route updates.

Expose netlink apis that don't rely on zebra core structs;
add parallel route-update code path using the dplane ctx;
simplest possible event loop to process queued route'
updates.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
14 files changed:
zebra/kernel_netlink.c
zebra/kernel_netlink.h
zebra/rib.h
zebra/rt.h
zebra/rt_netlink.c
zebra/rt_socket.c
zebra/zapi_msg.c
zebra/zapi_msg.h
zebra/zebra_dplane.c
zebra/zebra_dplane.h
zebra/zebra_memory.h
zebra/zebra_ns.h
zebra/zebra_rib.c
zebra/zebra_vrf.h