diff options
author | Renato Botelho <renato@netgate.com> | 2015-08-17 13:53:12 -0300 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2015-08-17 13:53:12 -0300 |
commit | cf3bb1a7166bec431631defe01c8d4e706a99638 (patch) | |
tree | 3cc07def4201a551fbc77acd53bb98a846b9deb9 /sys/contrib/altq/altq/altq_priq.h | |
parent | 2802b30081525836ca4599c79f53541b2085a3ac (diff) | |
download | FreeBSD-src-cf3bb1a7166bec431631defe01c8d4e706a99638.zip FreeBSD-src-cf3bb1a7166bec431631defe01c8d4e706a99638.tar.gz |
Importing pfSense patch altq_codel.diff
Diffstat (limited to 'sys/contrib/altq/altq/altq_priq.h')
-rw-r--r-- | sys/contrib/altq/altq/altq_priq.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sys/contrib/altq/altq/altq_priq.h b/sys/contrib/altq/altq/altq_priq.h index 481d31b..b5b062f 100644 --- a/sys/contrib/altq/altq/altq_priq.h +++ b/sys/contrib/altq/altq/altq_priq.h @@ -32,6 +32,7 @@ #include <altq/altq_classq.h> #include <altq/altq_red.h> #include <altq/altq_rio.h> +#include <altq/altq_codel.h> #ifdef __cplusplus extern "C" { @@ -59,6 +60,7 @@ struct priq_add_class { #define PRCF_RED 0x0001 /* use RED */ #define PRCF_ECN 0x0002 /* use RED/ECN */ #define PRCF_RIO 0x0004 /* use RIO */ +#define PRCF_CODEL 0x0008 /* use CODEL */ #define PRCF_CLEARDSCP 0x0010 /* clear diffserv codepoint */ #define PRCF_DEFAULTCLASS 0x1000 /* default class */ @@ -105,6 +107,7 @@ struct priq_classstats { /* red and rio related info */ int qtype; struct redstats red[3]; /* rio has 3 red stats */ + struct codel_stats codel; }; #ifdef ALTQ3_COMPAT @@ -134,7 +137,10 @@ struct priq_class_stats { struct priq_class { u_int32_t cl_handle; /* class handle */ class_queue_t *cl_q; /* class queue structure */ - struct red *cl_red; /* RED state */ + union { + struct red *cl_red; /* RED state */ + struct codel *cl_codel; /* CoDel state */ + } cl_aqm; int cl_pri; /* priority */ int cl_flags; /* class flags */ struct priq_if *cl_pif; /* back pointer to pif */ @@ -145,7 +151,8 @@ struct priq_class { struct pktcntr cl_xmitcnt; /* transmitted packet counter */ struct pktcntr cl_dropcnt; /* dropped packet counter */ }; - +#define cl_red cl_aqm.cl_red +#define cl_codel cl_aqm.cl_codel /* * priq interface state */ |