It looks like tc-adv is currently canonical?
I've briefly tested the attached against net-next.
--
Dave Täht
CEO, TekLibre, LLC
http://www.teklibre.com
Tel: 1-669-226-2619
From 21d25530b42d6c6e484b673182834275dba6b495 Mon Sep 17 00:00:00 2001
From: Dave Taht <[email protected]>
Date: Thu, 22 Mar 2018 14:53:59 -0700
Subject: [PATCH] retire link_ms and increase packets to 64 bits
the link_ms field was entirely unused
I have certainly managed to overrun the 32 bit packet field, so
increase that to 64 bits.
---
pkt_sched.h | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/pkt_sched.h b/pkt_sched.h
index 71288fb..105dd75 100644
--- a/pkt_sched.h
+++ b/pkt_sched.h
@@ -881,8 +881,7 @@ enum {
#define TCA_CAKE_MAX (__TCA_CAKE_MAX - 1)
struct tc_cake_traffic_stats {
- __u32 packets;
- __u32 link_ms;
+ __u64 packets;
__u64 bytes;
};
--
2.7.4
diff --git a/include/uapi/linux/pkt_sched.h b/include/uapi/linux/pkt_sched.h
index c63b7a8..04260ae 100644
--- a/include/uapi/linux/pkt_sched.h
+++ b/include/uapi/linux/pkt_sched.h
@@ -957,8 +957,7 @@ enum {
#define TCA_CAKE_MAX (__TCA_CAKE_MAX - 1)
struct tc_cake_traffic_stats {
- __u32 packets;
- __u32 link_ms;
+ __u64 packets;
__u64 bytes;
};
diff --git a/tc/q_cake.c b/tc/q_cake.c
index d195093..e544f67 100644
--- a/tc/q_cake.c
+++ b/tc/q_cake.c
@@ -702,7 +702,7 @@ static int cake_print_xstats(struct qdisc_util *qu, FILE *f,
fprintf(f, " pkts ");
FOR_EACH_TIN(stnc, tst, i)
- fprintf(f, " %12u", tst->sent.packets);
+ fprintf(f, " %12llu", tst->sent.packets);
fprintf(f, "\n");
fprintf(f, " bytes ");
@@ -727,17 +727,17 @@ static int cake_print_xstats(struct qdisc_util *qu, FILE *f,
fprintf(f, " drops ");
FOR_EACH_TIN(stnc, tst, i)
- fprintf(f, " %12u", tst->dropped.packets);
+ fprintf(f, " %12llu", tst->dropped.packets);
fprintf(f, "\n");
fprintf(f, " marks ");
FOR_EACH_TIN(stnc, tst, i)
- fprintf(f, " %12u", tst->ecn_marked.packets);
+ fprintf(f, " %12llu", tst->ecn_marked.packets);
fprintf(f, "\n");
fprintf(f, " ack_drop");
FOR_EACH_TIN(stnc, tst, i)
- fprintf(f, " %12u", tst->ack_drops.packets);
+ fprintf(f, " %12llu", tst->ack_drops.packets);
fprintf(f, "\n");
fprintf(f, " sp_flows");
_______________________________________________
Cake mailing list
[email protected]
https://lists.bufferbloat.net/listinfo/cake