bgpd: Optimize memory usage for bgp_nlri struct

```
struct bgp_nlri {
	uint16_t                   afi;                  /*     0     2 */
	uint8_t                    safi;                 /*     2     1 */

	/* XXX 1 byte hole, try to pack */

	bgp_size_t                 length;               /*     4     2 */

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

	uint8_t *                  nlri;                 /*     8     8 */

	/* size: 16, cachelines: 1, members: 4 */
	/* sum members: 13, holes: 2, sum holes: 3 */
	/* last cacheline: 16 bytes */
};   /* saved 8 bytes! */
```

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
This commit is contained in:
Donatas Abraitis 2024-01-29 15:37:23 +02:00
parent 7133cce196
commit 89e124f042

View File

@ -1890,11 +1890,11 @@ struct bgp_nlri {
/* SAFI. */
uint8_t safi; /* iana_safi_t */
/* Pointer to NLRI byte stream. */
uint8_t *nlri;
/* Length of whole NLRI. */
bgp_size_t length;
/* Pointer to NLRI byte stream. */
uint8_t *nlri;
};
/* BGP versions. */