mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2025-01-03 15:41:54 +00:00
Reducing initial channel bitmap sizes to help extreme cases
This commit is contained in:
parent
e565e045b6
commit
9073eda854
@ -516,8 +516,8 @@ channel_start_export(struct channel *c)
|
|||||||
.log_state_change = channel_export_log_state_change,
|
.log_state_change = channel_export_log_state_change,
|
||||||
};
|
};
|
||||||
|
|
||||||
bmap_init(&c->export_map, c->proto->pool, 1024);
|
bmap_init(&c->export_map, c->proto->pool, 16);
|
||||||
bmap_init(&c->export_reject_map, c->proto->pool, 1024);
|
bmap_init(&c->export_reject_map, c->proto->pool, 16);
|
||||||
|
|
||||||
channel_reset_limit(c, &c->out_limit, PLD_OUT);
|
channel_reset_limit(c, &c->out_limit, PLD_OUT);
|
||||||
|
|
||||||
@ -597,8 +597,8 @@ channel_export_stopped(struct rt_export_request *req)
|
|||||||
|
|
||||||
channel_reset_limit(c, &c->out_limit, PLD_OUT);
|
channel_reset_limit(c, &c->out_limit, PLD_OUT);
|
||||||
|
|
||||||
bmap_reset(&c->export_map, 1024);
|
bmap_reset(&c->export_map, 16);
|
||||||
bmap_reset(&c->export_reject_map, 1024);
|
bmap_reset(&c->export_reject_map, 16);
|
||||||
|
|
||||||
rt_request_export(c->table, req);
|
rt_request_export(c->table, req);
|
||||||
return;
|
return;
|
||||||
|
@ -2215,7 +2215,7 @@ rt_init_export(struct rt_exporter *re UNUSED, struct rt_export_hook *hook)
|
|||||||
{
|
{
|
||||||
hook->event.data = hook;
|
hook->event.data = hook;
|
||||||
|
|
||||||
bmap_init(&hook->seq_map, hook->pool, 1024);
|
bmap_init(&hook->seq_map, hook->pool, 16);
|
||||||
|
|
||||||
/* Regular export */
|
/* Regular export */
|
||||||
rt_set_export_state(hook, TES_FEEDING);
|
rt_set_export_state(hook, TES_FEEDING);
|
||||||
@ -3206,7 +3206,7 @@ rt_export_cleanup(struct rtable_private *tab)
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
ASSERT_DIE(atomic_load_explicit(&eh->last_export, memory_order_acquire) == NULL);
|
ASSERT_DIE(atomic_load_explicit(&eh->last_export, memory_order_acquire) == NULL);
|
||||||
bmap_reset(&eh->h.seq_map, 1024);
|
bmap_reset(&eh->h.seq_map, 16);
|
||||||
}
|
}
|
||||||
|
|
||||||
tab->exporter.next_seq = 1;
|
tab->exporter.next_seq = 1;
|
||||||
|
Loading…
Reference in New Issue
Block a user