summaryrefslogtreecommitdiff
path: root/include/linux/pkt_sched.h
diff options
context:
space:
mode:
authorstephen hemminger <shemminger@vyatta.com>2011-04-04 05:30:58 +0000
committerDavid S. Miller <davem@davemloft.net>2011-04-04 11:10:24 -0700
commit0545a3037773512d3448557ba048cebb73b3e4af (patch)
treefff0f5cf53ed953b002be1c4de0f3c2c7a88bd22 /include/linux/pkt_sched.h
parentfc3e5941248be00996150965a469d38c92913ac2 (diff)
downloadlwn-0545a3037773512d3448557ba048cebb73b3e4af.tar.gz
lwn-0545a3037773512d3448557ba048cebb73b3e4af.zip
pkt_sched: QFQ - quick fair queue scheduler
This is an implementation of the Quick Fair Queue scheduler developed by Fabio Checconi. The same algorithm is already implemented in ipfw in FreeBSD. Fabio had an earlier version developed on Linux, I just cleaned it up. Thanks to Eric Dumazet for testing this under load. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/pkt_sched.h')
-rw-r--r--include/linux/pkt_sched.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/include/linux/pkt_sched.h b/include/linux/pkt_sched.h
index b1032a3fafdc..8062e0a68dda 100644
--- a/include/linux/pkt_sched.h
+++ b/include/linux/pkt_sched.h
@@ -588,4 +588,19 @@ struct tc_sfb_xstats {
#define SFB_MAX_PROB 0xFFFF
+/* QFQ */
+enum {
+ TCA_QFQ_UNSPEC,
+ TCA_QFQ_WEIGHT,
+ TCA_QFQ_LMAX,
+ __TCA_QFQ_MAX
+};
+
+#define TCA_QFQ_MAX (__TCA_QFQ_MAX - 1)
+
+struct tc_qfq_stats {
+ __u32 weight;
+ __u32 lmax;
+};
+
#endif