]> git.ipfire.org Git - thirdparty/iproute2.git/commitdiff
uapi/pkt_sched: upstream changes from fq_pie
authorStephen Hemminger <stephen@networkplumber.org>
Wed, 29 Jan 2020 13:46:43 +0000 (05:46 -0800)
committerStephen Hemminger <stephen@networkplumber.org>
Wed, 29 Jan 2020 13:46:43 +0000 (05:46 -0800)
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
include/uapi/linux/pkt_sched.h

index bf5a5b1dfb0b03fcf410cef38b0e106ebdc90ad7..bbe791b241682fafddfac2d40aaad2bc789eebe8 100644 (file)
@@ -971,6 +971,37 @@ struct tc_pie_xstats {
        __u32 ecn_mark;                 /* packets marked with ecn*/
 };
 
+/* FQ PIE */
+enum {
+       TCA_FQ_PIE_UNSPEC,
+       TCA_FQ_PIE_LIMIT,
+       TCA_FQ_PIE_FLOWS,
+       TCA_FQ_PIE_TARGET,
+       TCA_FQ_PIE_TUPDATE,
+       TCA_FQ_PIE_ALPHA,
+       TCA_FQ_PIE_BETA,
+       TCA_FQ_PIE_QUANTUM,
+       TCA_FQ_PIE_MEMORY_LIMIT,
+       TCA_FQ_PIE_ECN_PROB,
+       TCA_FQ_PIE_ECN,
+       TCA_FQ_PIE_BYTEMODE,
+       TCA_FQ_PIE_DQ_RATE_ESTIMATOR,
+       __TCA_FQ_PIE_MAX
+};
+#define TCA_FQ_PIE_MAX   (__TCA_FQ_PIE_MAX - 1)
+
+struct tc_fq_pie_xstats {
+       __u32 packets_in;       /* total number of packets enqueued */
+       __u32 dropped;          /* packets dropped due to fq_pie_action */
+       __u32 overlimit;        /* dropped due to lack of space in queue */
+       __u32 overmemory;       /* dropped due to lack of memory in queue */
+       __u32 ecn_mark;         /* packets marked with ecn */
+       __u32 new_flow_count;   /* count of new flows created by packets */
+       __u32 new_flows_len;    /* count of flows in new list */
+       __u32 old_flows_len;    /* count of flows in old list */
+       __u32 memory_usage;     /* total memory across all queues */
+};
+
 /* CBS */
 struct tc_cbs_qopt {
        __u8 offload;