diff options
Diffstat (limited to 'libc/kernel/common/linux/pkt_sched.h')
-rw-r--r-- | libc/kernel/common/linux/pkt_sched.h | 52 |
1 files changed, 50 insertions, 2 deletions
diff --git a/libc/kernel/common/linux/pkt_sched.h b/libc/kernel/common/linux/pkt_sched.h index 1e15d83..0b2966a 100644 --- a/libc/kernel/common/linux/pkt_sched.h +++ b/libc/kernel/common/linux/pkt_sched.h @@ -12,6 +12,8 @@ #ifndef __LINUX_PKT_SCHED_H #define __LINUX_PKT_SCHED_H +#include <linux/types.h> + #define TC_PRIO_BESTEFFORT 0 #define TC_PRIO_FILLER 1 #define TC_PRIO_BULK 2 @@ -53,12 +55,34 @@ struct tc_ratespec { unsigned char cell_log; unsigned char __reserved; - unsigned short feature; - short addend; + unsigned short overhead; + short cell_align; unsigned short mpu; __u32 rate; }; +#define TC_RTAB_SIZE 1024 + +struct tc_sizespec { + unsigned char cell_log; + unsigned char size_log; + short cell_align; + int overhead; + unsigned int linklayer; + unsigned int mpu; + unsigned int mtu; + unsigned int tsize; +}; + +enum { + TCA_STAB_UNSPEC, + TCA_STAB_BASE, + TCA_STAB_DATA, + __TCA_STAB_MAX +}; + +#define TCA_STAB_MAX (__TCA_STAB_MAX - 1) + struct tc_fifo_qopt { __u32 limit; @@ -73,6 +97,11 @@ struct tc_prio_qopt __u8 priomap[TC_PRIO_MAX+1]; }; +struct tc_multiq_qopt { + __u16 bands; + __u16 max_bands; +}; + struct tc_tbf_qopt { struct tc_ratespec rate; @@ -102,6 +131,11 @@ struct tc_sfq_qopt unsigned flows; }; +struct tc_sfq_xstats +{ + __s32 allot; +}; + enum { TCA_RED_UNSPEC, @@ -402,4 +436,18 @@ struct tc_netem_corrupt #define NETEM_DIST_SCALE 8192 +enum +{ + TCA_DRR_UNSPEC, + TCA_DRR_QUANTUM, + __TCA_DRR_MAX +}; + +#define TCA_DRR_MAX (__TCA_DRR_MAX - 1) + +struct tc_drr_stats +{ + __u32 deficit; +}; + #endif |