summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Mares <mj@ucw.cz>1999-03-29 22:14:33 +0200
committerMartin Mares <mj@ucw.cz>1999-03-29 22:14:33 +0200
commit5bc512aa3a0d3e4ca378fff3316b75c131f17637 (patch)
tree1f7d48bab9c94313b58845412472e06b21c7f712
parent3f2a21fd348e49cf3ca98750b14e14dd04b3209b (diff)
downloadbird-5bc512aa3a0d3e4ca378fff3316b75c131f17637.tar
bird-5bc512aa3a0d3e4ca378fff3316b75c131f17637.zip
Clarify resource dumps and include them in the main debugging dump.
-rw-r--r--lib/mempool.c10
-rw-r--r--lib/resource.c5
-rw-r--r--nest/proto.c5
-rw-r--r--sysdep/unix/main.c1
4 files changed, 13 insertions, 8 deletions
diff --git a/lib/mempool.c b/lib/mempool.c
index 49e6e90..9319859 100644
--- a/lib/mempool.c
+++ b/lib/mempool.c
@@ -150,13 +150,17 @@ lp_dump(resource *r)
{
linpool *m = (linpool *) r;
struct lp_chunk *c;
- int cnt;
+ int cnt, cntl;
for(cnt=0, c=m->first; c; c=c->next, cnt++)
;
- debug("(chunk=%d threshold=%d count=%d total=%d)\n",
+ for(cntl=0, c=m->first_large; c; c=c->next, cntl++)
+ ;
+ debug("(chunk=%d threshold=%d count=%d+%d total=%d+%d)\n",
m->chunk_size,
m->threshold,
cnt,
- m->total);
+ cntl,
+ m->total,
+ m->total_large);
}
diff --git a/lib/resource.c b/lib/resource.c
index f2a0c77..ceaa0ad 100644
--- a/lib/resource.c
+++ b/lib/resource.c
@@ -37,6 +37,7 @@ pool *
rp_new(pool *p, char *name)
{
pool *z = ralloc(p, &pool_class);
+ z->name = name;
init_list(&z->inside);
return z;
}
@@ -62,7 +63,7 @@ pool_dump(resource *P)
pool *p = (pool *) P;
resource *r;
- debug(" %s\n", p->name);
+ debug("%s\n", p->name);
indent += 3;
WALK_LIST(r, p->inside)
rdump(r);
@@ -93,7 +94,7 @@ rdump(void *res)
debug(x, "", (int) r);
if (r)
{
- debug("%-6s", r->class->name);
+ debug("%s ", r->class->name);
r->class->dump(r);
}
else
diff --git a/nest/proto.c b/nest/proto.c
index 450128e..f230c8e 100644
--- a/nest/proto.c
+++ b/nest/proto.c
@@ -95,9 +95,8 @@ proto_new(struct proto_config *c, unsigned size)
static void
proto_init_instance(struct proto *p)
{
- struct proto_config *c = p->cf;
-
- p->pool = rp_new(proto_pool, c->name);
+ /* Here we cannot use p->cf->name since it won't survive reconfiguration */
+ p->pool = rp_new(proto_pool, p->proto->name);
p->attn = ev_new(p->pool);
p->attn->data = p;
}
diff --git a/sysdep/unix/main.c b/sysdep/unix/main.c
index 5f260ca..356070f 100644
--- a/sysdep/unix/main.c
+++ b/sysdep/unix/main.c
@@ -38,6 +38,7 @@ async_dump(void)
{
debug("INTERNAL STATE DUMP\n\n");
+ rdump(&root_pool);
sk_dump_all();
tm_dump_all();
if_dump_all();