diff options
| author | Jorge Boncompte <jbonor@gmail.com> | 2017-08-05 12:59:05 +0200 |
|---|---|---|
| committer | Jorge Boncompte <jbonor@gmail.com> | 2017-08-17 17:58:35 +0200 |
| commit | aac2483887eddfe782a31f03b5a30643793935f5 (patch) | |
| tree | d63f004370dcd3eb2405a40817750291c9c611c1 /lib/buffer.c | |
| parent | 92375c917edb63c32d5441f6a264e73af5b2a2a0 (diff) | |
bgpd: bgp process queue optimization
There are several code paths that dump nodes to the queue for route
processing in a loop. This patch tries to reduce memory allocations/freeing
(work item, list node) and thread scheduling overhead by batching the nodes
in a simple queue list.
In the past when route processing wasn't event driven (bgp_scan()), this used
to have a noticeable impact in table loading, convergence time and memory heap
fragmentation due to reduced alloc's/free's.
Signed-off-by: Jorge Boncompte <jbonor@gmail.com>
Diffstat (limited to 'lib/buffer.c')
0 files changed, 0 insertions, 0 deletions
