On Sun, 16 Mar 2025 16:39:17 +0100 chia-yu.chang@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.