aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/linux
diff options
context:
space:
mode:
authorVinicius Costa Gomes <vinicius.gomes@intel.com>2017-10-16 21:01:26 -0400
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2017-10-27 12:48:02 -0400
commit585d763af09cc21daf48ecc873604ccdb70f6014 (patch)
treead8b09f581d51c80e4f6195f6d2a3eca6e83c5da /include/uapi/linux
parent0f7787b4133fb26b6dc0779e4867408e07711d8e (diff)
net/sched: Introduce Credit Based Shaper (CBS) qdisc
This queueing discipline implements the shaper algorithm defined by the 802.1Q-2014 Section 8.6.8.2 and detailed in Annex L. It's primary usage is to apply some bandwidth reservation to user defined traffic classes, which are mapped to different queues via the mqprio qdisc. Only a simple software implementation is added for now. Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@intel.com> Signed-off-by: Jesus Sanchez-Palencia <jesus.sanchez-palencia@intel.com> Tested-by: Henrik Austad <henrik@austad.us> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'include/uapi/linux')
-rw-r--r--include/uapi/linux/pkt_sched.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/uapi/linux/pkt_sched.h b/include/uapi/linux/pkt_sched.h
index e7cc3d3c7421..0e88cc262ca0 100644
--- a/include/uapi/linux/pkt_sched.h
+++ b/include/uapi/linux/pkt_sched.h
@@ -904,4 +904,23 @@ struct tc_pie_xstats {
904 __u32 maxq; /* maximum queue size */ 904 __u32 maxq; /* maximum queue size */
905 __u32 ecn_mark; /* packets marked with ecn*/ 905 __u32 ecn_mark; /* packets marked with ecn*/
906}; 906};
907
908/* CBS */
909struct tc_cbs_qopt {
910 __u8 offload;
911 __u8 _pad[3];
912 __s32 hicredit;
913 __s32 locredit;
914 __s32 idleslope;
915 __s32 sendslope;
916};
917
918enum {
919 TCA_CBS_UNSPEC,
920 TCA_CBS_PARMS,
921 __TCA_CBS_MAX,
922};
923
924#define TCA_CBS_MAX (__TCA_CBS_MAX - 1)
925
907#endif 926#endif