tc: jsonify sample action

Signed-off-by: Roman Mashak <mrv@mojatatu.com>
Signed-off-by: David Ahern <dsahern@gmail.com>
This commit is contained in:
Roman Mashak 2018-03-31 00:20:45 -04:00 committed by David Ahern
parent c2f60f5c8e
commit 7ada016aeb

View File

@ -149,23 +149,27 @@ static int print_sample(struct action_util *au, FILE *f, struct rtattr *arg)
if (!tb[TCA_SAMPLE_PARMS] || !tb[TCA_SAMPLE_RATE] || if (!tb[TCA_SAMPLE_PARMS] || !tb[TCA_SAMPLE_RATE] ||
!tb[TCA_SAMPLE_PSAMPLE_GROUP]) { !tb[TCA_SAMPLE_PSAMPLE_GROUP]) {
fprintf(f, "[NULL sample parameters]"); print_string(PRINT_FP, NULL, "%s", "[NULL sample parameters]");
return -1; return -1;
} }
p = RTA_DATA(tb[TCA_SAMPLE_PARMS]); p = RTA_DATA(tb[TCA_SAMPLE_PARMS]);
fprintf(f, "sample rate 1/%d group %d", print_string(PRINT_ANY, "kind", "%s ", "sample");
rta_getattr_u32(tb[TCA_SAMPLE_RATE]), print_uint(PRINT_ANY, "rate", "rate 1/%u ",
rta_getattr_u32(tb[TCA_SAMPLE_PSAMPLE_GROUP])); rta_getattr_u32(tb[TCA_SAMPLE_RATE]));
print_uint(PRINT_ANY, "group", "group %u",
rta_getattr_u32(tb[TCA_SAMPLE_PSAMPLE_GROUP]));
if (tb[TCA_SAMPLE_TRUNC_SIZE]) if (tb[TCA_SAMPLE_TRUNC_SIZE])
fprintf(f, " trunc_size %d", print_uint(PRINT_ANY, "trunc_size", " trunc_size %u",
rta_getattr_u32(tb[TCA_SAMPLE_TRUNC_SIZE])); rta_getattr_u32(tb[TCA_SAMPLE_TRUNC_SIZE]));
print_action_control(f, " ", p->action, ""); print_action_control(f, " ", p->action, "");
fprintf(f, "\n\tindex %d ref %d bind %d", p->index, p->refcnt, print_string(PRINT_FP, NULL, "%s", _SL_);
p->bindcnt); print_uint(PRINT_ANY, "index", "\t index %u", p->index);
print_int(PRINT_ANY, "ref", " ref %d", p->refcnt);
print_int(PRINT_ANY, "bind", " bind %d", p->bindcnt);
if (show_stats) { if (show_stats) {
if (tb[TCA_SAMPLE_TM]) { if (tb[TCA_SAMPLE_TM]) {
@ -174,7 +178,7 @@ static int print_sample(struct action_util *au, FILE *f, struct rtattr *arg)
print_tm(f, tm); print_tm(f, tm);
} }
} }
fprintf(f, "\n"); print_string(PRINT_FP, NULL, "%s", _SL_);
return 0; return 0;
} }