On Sun, 16 Mar 2025 16:39:17 +0100
chia-yu.ch...@nokia-bell-labs.com wrote:

> +static int dualpi2_print_xstats(struct qdisc_util *qu, FILE *f,
> +                         struct rtattr *xstats)
> +{
> +     struct tc_dualpi2_xstats *st;
> +
> +     if (xstats == NULL)
> +             return 0;
> +
> +     if (RTA_PAYLOAD(xstats) < sizeof(*st))
> +             return -1;
> +
> +     st = RTA_DATA(xstats);
> +     fprintf(f, "prob %f delay_c %uus delay_l %uus\n",
> +             (double)st->prob / (double)MAX_PROB, st->delay_c, st->delay_l);
> +     fprintf(f, "pkts_in_c %u pkts_in_l %u maxq %u\n",
> +             st->packets_in_c, st->packets_in_l, st->maxq);
> +     fprintf(f, "ecn_mark %u step_marks %u\n", st->ecn_mark, st->step_marks);
> +     fprintf(f, "credit %d (%c)\n", st->credit, st->credit > 0 ? 'C' : 'L');
> +     fprintf(f, "memory used %u (max %u) of memory limit %u\n",
> +             st->memory_used, st->max_memory_used, st->memory_limit);
> +     return 0;
> +

You should support JSON for the stats as well.

Reply via email to