1
0
mirror of https://gitlab.labs.nic.cz/labs/bird.git synced 2024-05-11 16:54:54 +00:00

Merge remote-tracking branch 'origin/int-new' into int-new

This commit is contained in:
Ondrej Zajicek (work)
2017-05-17 14:50:00 +02:00
19 changed files with 475 additions and 434 deletions

View File

@@ -401,7 +401,7 @@ t_builder4(void)
resource_init();
struct flow_builder *fb = flow_builder_init(&root_pool);
linpool *lp = lp_new(&root_pool, 4096);
linpool *lp = lp_new_default(&root_pool);
/* Expectation */
@@ -482,7 +482,7 @@ t_builder6(void)
net_addr_ip6 ip;
resource_init();
linpool *lp = lp_new(&root_pool, 4096);
linpool *lp = lp_new_default(&root_pool);
struct flow_builder *fb = flow_builder_init(&root_pool);
fb->ipv6 = 1;

View File

@@ -32,6 +32,8 @@ struct lp_chunk {
byte data[0];
};
const int lp_chunk_size = sizeof(struct lp_chunk);
struct linpool {
resource r;
byte *ptr, *end;

View File

@@ -65,6 +65,11 @@ void *lp_allocu(linpool *, unsigned size); /* Unaligned */
void *lp_allocz(linpool *, unsigned size); /* With clear */
void lp_flush(linpool *); /* Free everything, but leave linpool */
extern const int lp_chunk_size;
#define LP_GAS 1024
#define LP_GOOD_SIZE(x) (((x + LP_GAS - 1) & (~(LP_GAS - 1))) - lp_chunk_size)
#define lp_new_default(p) lp_new(p, LP_GOOD_SIZE(LP_GAS*4))
/* Slabs */
typedef struct slab slab;