diff options
author | Maria Matejka <mq@ucw.cz> | 2023-01-19 10:56:16 +0100 |
---|---|---|
committer | Maria Matejka <mq@ucw.cz> | 2023-01-19 11:10:25 +0100 |
commit | 4d8d81f144e72fe2e182d7569087f2a8c8c5b938 (patch) | |
tree | 2b9fae3a99e9e4abe362a90ad521e16063e5fba5 /nest/rt-attr.c | |
parent | 59a5bf18f997e11a3e3ddd70d59f597f77fa2b6c (diff) |
Table prune routine doesn't walk over lists unless needed.
If no channel is flushing, table prune doesn't walk over routes in nets
and also doesn't walk over importing channel lists. This helps to
alleviate the memory caching burdens a lot.
Diffstat (limited to 'nest/rt-attr.c')
-rw-r--r-- | nest/rt-attr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/nest/rt-attr.c b/nest/rt-attr.c index b41e56c2..761ec0d9 100644 --- a/nest/rt-attr.c +++ b/nest/rt-attr.c @@ -568,6 +568,8 @@ static struct resclass ea_class_ref_class = { static void ea_class_init(void) { + ASSERT_DIE(ea_class_global == NULL); + idm_init(&ea_class_idm, rta_pool, EA_CLASS_INITIAL_MAX); ea_class_global = mb_allocz(rta_pool, sizeof(*ea_class_global) * (ea_class_max = EA_CLASS_INITIAL_MAX)); |