On Mon, Oct 29, 2018 at 10:58:36AM +0100, Claudio Jeker wrote:
> With the last commit the rde_aspath no longer needs to have a list of
> prefixes and also the peer no longer need to have a list of aspaths.
> This diff removes both and replaces the list of prefixes with a refcount.
> The big benefit of this is that struct rde_aspath can now be shared
> between sessions and ribs. This is an important set for Adj-RIB-Out
> support.
> 

And here is the bgpctl diff to print out the number of references hold on
the rde_aspath structs.

-- 
:wq Claudio

Index: bgpctl.c
===================================================================
RCS file: /cvs/src/usr.sbin/bgpctl/bgpctl.c,v
retrieving revision 1.220
diff -u -p -r1.220 bgpctl.c
--- bgpctl.c    26 Oct 2018 16:54:53 -0000      1.220
+++ bgpctl.c    29 Oct 2018 09:43:34 -0000
@@ -1864,6 +1864,8 @@ show_rib_memory_msg(struct imsg *imsg)
                printf("%10lld BGP path attribute entries using %s of memory\n",
                    (long long)stats.path_cnt, fmt_mem(stats.path_cnt *
                    sizeof(struct rde_aspath)));
+               printf("\t   and holding %lld references\n",
+                   (long long)stats.path_refs);
                printf("%10lld BGP AS-PATH attribute entries using "
                    "%s of memory,\n\t   and holding %lld references\n",
                    (long long)stats.aspath_cnt, fmt_mem(stats.aspath_size),

Reply via email to