diff options
author | 2025-02-10 11:19:47 +0000 | |
---|---|---|
committer | 2025-02-15 03:06:12 +0000 | |
commit | 9a834c0112b0987bbbb173f6da67d3c111aeecad (patch) | |
tree | 10759b22ddca07480c4e801eb89b1cf8e7c8d1a7 /src/vnet/fib | |
parent | 884ab372500c9937d4ae21e0bc77ea51e6144307 (diff) |
ip: add support to preallocate pools
Type: improvement
In certain use cases, the underlying pools expand by allocating a new,
larger pool and copying the existing elements into it. This process
can be time-consuming, leading to slower control plane configurations,
especially when a large number of elements are already present.
This patch allows users to pre-configure some of these pools through
startup.conf.
It also fixes alignment for ip4 mtrie.
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
Signed-off-by: BenoƮt Ganne <bganne@cisco.com>
Change-Id: Ib0f1d40e3efb8b4fce989219196c718d6834498a
Diffstat (limited to 'src/vnet/fib')
-rw-r--r-- | src/vnet/fib/fib_entry.c | 6 | ||||
-rw-r--r-- | src/vnet/fib/fib_entry.h | 1 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/vnet/fib/fib_entry.c b/src/vnet/fib/fib_entry.c index adf880b8bbb..c86941fce9a 100644 --- a/src/vnet/fib/fib_entry.c +++ b/src/vnet/fib/fib_entry.c @@ -1772,6 +1772,12 @@ fib_entry_module_init (void) fib_entry_track_module_init(); } +void +fib_entry_pool_alloc (uword size) +{ + pool_alloc(fib_entry_pool, size); +} + fib_route_path_t * fib_entry_encode (fib_node_index_t fib_entry_index) { diff --git a/src/vnet/fib/fib_entry.h b/src/vnet/fib/fib_entry.h index 7331f803ec4..2c88d1e5f6a 100644 --- a/src/vnet/fib/fib_entry.h +++ b/src/vnet/fib/fib_entry.h @@ -480,6 +480,7 @@ extern void fib_entry_set_flow_hash_config(fib_node_index_t fib_entry_index, flow_hash_config_t hash_config); extern void fib_entry_module_init(void); +extern void fib_entry_pool_alloc(uword size); extern u32 fib_entry_get_stats_index(fib_node_index_t fib_entry_index); |