BUILD: ot: use a cebtree instead of a list for variable names

In order for the function flt_ot_vars_scope_dump() to work, it is
necessary to take into account the changes made by the commits 47ec7c681
("OPTIM: vars: use a cebtree instead of a list for variable names") and
5d350d1e5 ("OPTIM: vars: use multiple name heads in the vars struct").

The function is only used if the OT_DEBUG=1 option is set when compiling
HAProxy.
This commit is contained in:
Miroslav Zagorac 2024-10-28 15:31:55 +01:00 committed by William Lallemand
parent 581c8a27d9
commit aadda34fd6

View File

@ -39,14 +39,21 @@
*/ */
static void flt_ot_vars_scope_dump(struct vars *vars, const char *scope) static void flt_ot_vars_scope_dump(struct vars *vars, const char *scope)
{ {
const struct var *var; int i;
if (vars == NULL) if (vars == NULL)
return; return;
vars_rdlock(vars); vars_rdlock(vars);
list_for_each_entry(var, &(vars->head), l) for (i = 0; i < VAR_NAME_ROOTS; i++) {
FLT_OT_DBG(2, "'%s.%016" PRIx64 "' -> '%.*s'", scope, var->name_hash, (int)b_data(&(var->data.u.str)), b_orig(&(var->data.u.str))); struct ceb_node *node = cebu64_first(&(vars->name_root[i]));
for ( ; node != NULL; node = cebu64_next(&(vars->name_root[i]), node)) {
struct var *var = container_of(node, struct var, node);
FLT_OT_DBG(2, "'%s.%016" PRIx64 "' -> '%.*s'", scope, var->name_hash, (int)b_data(&(var->data.u.str)), b_orig(&(var->data.u.str)));
}
}
vars_rdunlock(vars); vars_rdunlock(vars);
} }