summaryrefslogtreecommitdiffabout
authorSergey Poznyakoff <gray@gnu.org.ua>2016-02-08 11:21:21 (GMT)
committer Sergey Poznyakoff <gray@gnu.org.ua>2016-02-08 11:21:50 (GMT)
commit777bd9688099daf5af9d0e41f2df668040e072a9 (patch) (side-by-side diff)
treee21f4520d4ccb1387575cc6baeef6ff59582d57f
parent067d63d298a15810171555f7f0acf96fb1946667 (diff)
downloadvmod-tbf-777bd9688099daf5af9d0e41f2df668040e072a9.tar.gz
vmod-tbf-777bd9688099daf5af9d0e41f2df668040e072a9.tar.bz2
Fix debug levels. Document data structures.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--src/tbf.c9
-rw-r--r--src/tbf.h19
2 files changed, 15 insertions, 13 deletions
diff --git a/src/tbf.c b/src/tbf.c
index 85dd608..a1b6f9f 100644
--- a/src/tbf.c
+++ b/src/tbf.c
@@ -45,7 +45,7 @@ lru_link_node(struct tree *tree, struct node *node, struct node *ref)
tree->head = node;
} else {
struct node *x;
- //debug(0, ("LINK %p %p %p", node, ref, ref->next));
+
node->prev = ref;
node->next = ref->next;
if ((x = ref->next))
@@ -665,7 +665,7 @@ tree_load_nodes(struct tree *tree, struct dump_header *hdr,
uint32_t len;
uint32_t flags;
- debug(0,("Load record %lu/%lu %lu", i, hdr->count, incomplete));
+ debug(3,("Load record %lu/%lu %lu", i, hdr->count, incomplete));
if (READREC(fp, len))
return -1;
@@ -724,7 +724,7 @@ tree_load_nodes(struct tree *tree, struct dump_header *hdr,
np->tokens = node.tokens;
#if DEBUG
np->keystr = node.keystr;
- debug(0, ("loaded %p: %s %1x (%lu,%lu): time: %"PRIu64" us, tokens: %lu",
+ debug(3, ("loaded %p: %s %1x (%lu,%lu): time: %"PRIu64" us, tokens: %lu",
np,
np->keystr,
flags,
@@ -768,7 +768,6 @@ tree_load_nodes(struct tree *tree, struct dump_header *hdr,
return 1;
}
tree->root = nodes[hdr->root];
-// debug(0,("Loaded nodes"));
return 0;
}
@@ -792,7 +791,7 @@ tree_load(char const *filename)
else {
struct node **nodes;
- debug(0,("elements: %"PRIu32", size: %"PRIu32", root: %"PRIu32,
+ debug(3,("elements: %"PRIu32", size: %"PRIu32", root: %"PRIu32,
header.count, header.size, header.root));
tree = tree_create();
nodes = calloc(header.count, sizeof(*nodes));
diff --git a/src/tbf.h b/src/tbf.h
index d4dd292..69fd89d 100644
--- a/src/tbf.h
+++ b/src/tbf.h
@@ -53,20 +53,23 @@ enum { CHILD_LEFT, CHILD_RIGHT };
#define FL_CHILD_LEFT 0x1
#define FL_CHILD_RIGHT 0x2
-enum { NST_INCOMPLETE, NST_INIT };
+enum node_status { NST_INCOMPLETE, NST_INIT };
struct node {
uint8_t key[SHA256_LEN];
#ifdef DEBUG
char *keystr;
#endif
- struct node *parent;
- struct node *child[2];
- struct node *prev, *next;
- pthread_cond_t notbusy;
- int busy:1;
- int status;
- uint32_t ord;
+ struct node *parent; /* Parent node */
+ struct node *child[2]; /* Left and right child nodes */
+ struct node *prev, *next; /* More (prev) and less (next) recently
+ updated nodes. */
+ pthread_cond_t notbusy; /* Prevent simultaneous updates */
+ int busy:1; /* Node is in use if 1 */
+ enum node_status status; /* Node status */
+ uint32_t ord; /* Used when dumping nodes and computing tree
+ stats */
+ /* Actual TBF payload: */
uint64_t timestamp; /* microseconds since epoch */
size_t tokens; /* tokens available */
};

Return to:

Send suggestions and report system problems to the System administrator.