diff options
Diffstat (limited to 'src/ipcpd')
-rw-r--r-- | src/ipcpd/CMakeLists.txt | 6 | ||||
-rw-r--r-- | src/ipcpd/config.h.in | 1 | ||||
-rw-r--r-- | src/ipcpd/eth/eth.c | 2 | ||||
-rw-r--r-- | src/ipcpd/normal/sdu_sched.c | 3 | ||||
-rw-r--r-- | src/ipcpd/udp/main.c | 2 |
5 files changed, 11 insertions, 3 deletions
diff --git a/src/ipcpd/CMakeLists.txt b/src/ipcpd/CMakeLists.txt index d7523aeb..b706d432 100644 --- a/src/ipcpd/CMakeLists.txt +++ b/src/ipcpd/CMakeLists.txt @@ -8,6 +8,8 @@ set(IPCP_QOS_CUBE_VIDEO_PRIO 90 CACHE STRING "Priority for video QoS cube (0-99)") set(IPCP_QOS_CUBE_VOICE_PRIO 99 CACHE STRING "Priority for voice QoS cube (0-99)") +set(IPCP_QOS_CUBE_DATA_PRIO 0 CACHE STRING + "Priority for data QoS cube (0-99)") set(IPCP_MIN_THREADS 4 CACHE STRING "Minimum number of worker threads in the IPCP") set(IPCP_ADD_THREADS 4 CACHE STRING @@ -27,6 +29,10 @@ if ((IPCP_QOS_CUBE_BE_PRIO LESS 0) OR (IPCP_QOS_CUBE_BE_PRIO GREATER 99)) message(FATAL_ERROR "Invalid priority for best effort QoS cube") endif () +if ((IPCP_QOS_CUBE_DATA_PRIO LESS 0) OR (IPCP_QOS_CUBE_DATA_PRIO GREATER 99)) + message(FATAL_ERROR "Invalid priority for data QoS cube") +endif () + if ((IPCP_QOS_CUBE_VIDEO_PRIO LESS 0) OR (IPCP_QOS_CUBE_VIDEO_PRIO GREATER 99)) message(FATAL_ERROR "Invalid priority for video QoS cube") endif () diff --git a/src/ipcpd/config.h.in b/src/ipcpd/config.h.in index 2b4bef78..b9961b01 100644 --- a/src/ipcpd/config.h.in +++ b/src/ipcpd/config.h.in @@ -46,6 +46,7 @@ #define QOS_PRIO_BE @IPCP_QOS_CUBE_BE_PRIO@ #define QOS_PRIO_VIDEO @IPCP_QOS_CUBE_VIDEO_PRIO@ #define QOS_PRIO_VOICE @IPCP_QOS_CUBE_VOICE_PRIO@ +#define QOS_PRIO_DATA @IPCP_QOS_CUBE_DATA_PRIO@ #define IPCP_SCHED_THR_MUL @IPCP_SCHED_THR_MUL@ #define PFT_SIZE @PFT_SIZE@ diff --git a/src/ipcpd/eth/eth.c b/src/ipcpd/eth/eth.c index 7bac64ca..443f3fdb 100644 --- a/src/ipcpd/eth/eth.c +++ b/src/ipcpd/eth/eth.c @@ -1521,7 +1521,7 @@ static int eth_ipcp_flow_alloc(int fd, assert(hash); - if (cube > QOS_CUBE_BE) { + if (cube > QOS_CUBE_DATA) { log_dbg("Unsupported QoS requested."); return -1; } diff --git a/src/ipcpd/normal/sdu_sched.c b/src/ipcpd/normal/sdu_sched.c index 529da113..0ae22895 100644 --- a/src/ipcpd/normal/sdu_sched.c +++ b/src/ipcpd/normal/sdu_sched.c @@ -39,7 +39,8 @@ static int qos_prio [] = { QOS_PRIO_RAW, QOS_PRIO_BE, QOS_PRIO_VIDEO, - QOS_PRIO_VOICE + QOS_PRIO_VOICE, + QOS_PRIO_DATA }; struct sdu_sched { diff --git a/src/ipcpd/udp/main.c b/src/ipcpd/udp/main.c index 2ec4d502..2e59e1a5 100644 --- a/src/ipcpd/udp/main.c +++ b/src/ipcpd/udp/main.c @@ -958,7 +958,7 @@ static int ipcp_udp_flow_alloc(int fd, assert(dst); - if (cube > QOS_CUBE_BE) { + if (cube > QOS_CUBE_DATA) { log_dbg("Unsupported QoS requested."); return -1; } |