]> git.puffer.fish Git - matthieu/frr.git/commitdiff
bgpd: Reduce size of 'struct bgp_node' by 8 bytes
authorDonald Sharp <sharpd@cumulusnetworks.com>
Tue, 25 Sep 2018 22:39:37 +0000 (18:39 -0400)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Fri, 16 Nov 2018 14:43:35 +0000 (09:43 -0500)
The ordering of data within the `struct bgp_node`
was causing extra padding of data.  Moving the version
to a bit different spot allows for more efficient packing
of data.

Pre-change:
(gdb) p sizeof(struct bgp_node)
$1 = 152
(gdb)

Post-change:
(gdb) p sizeof(struct bgp_node)
$1 = 144
(gdb)

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
bgpd/bgp_table.h

index c267b4fe8ae42ceb69f65d87399280967e45b54a..f306a05da1be18fa9cc6a5d8f261b8c09e885054 100644 (file)
@@ -60,9 +60,10 @@ struct bgp_node {
 
        STAILQ_ENTRY(bgp_node) pq;
 
+       uint64_t version;
+
        mpls_label_t local_label;
 
-       uint64_t version;
        uint8_t flags;
 #define BGP_NODE_PROCESS_SCHEDULED     (1 << 0)
 #define BGP_NODE_USER_CLEAR             (1 << 1)