]> git.puffer.fish Git - mirror/frr.git/commitdiff
bgpd: Optimize memory usage for bgp_notify struct
authorDonatas Abraitis <donatas@opensourcerouting.org>
Mon, 29 Jan 2024 13:29:25 +0000 (15:29 +0200)
committerDonatas Abraitis <donatas@opensourcerouting.org>
Mon, 29 Jan 2024 13:29:25 +0000 (15:29 +0200)
```
struct bgp_notify {
uint8_t                    code;                 /*     0     1 */
uint8_t                    subcode;              /*     1     1 */
bgp_size_t                 length;               /*     2     2 */
_Bool                      hard_reset;           /*     4     1 */

/* XXX 3 bytes hole, try to pack */

char *                     data;                 /*     8     8 */
uint8_t *                  raw_data;             /*    16     8 */

/* size: 24, cachelines: 1, members: 6 */
/* sum members: 21, holes: 1, sum holes: 3 */
/* last cacheline: 24 bytes */
};   /* saved 16 bytes! */
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
bgpd/bgpd.h

index a1593421beb6238af783f903469fcddc889f65c5..8bde9999f9bf4c530d8b4d3abafcb0ede5b2b848 100644 (file)
@@ -888,10 +888,10 @@ struct peer_group {
 struct bgp_notify {
        uint8_t code;
        uint8_t subcode;
-       char *data;
        bgp_size_t length;
-       uint8_t *raw_data;
        bool hard_reset;
+       char *data;
+       uint8_t *raw_data;
 };
 
 /* Next hop self address. */