From 91180700a44e857311ecc9eadbfc27c7f9b802cb Mon Sep 17 00:00:00 2001 From: Dimitri Staessens Date: Thu, 7 Jun 2018 16:01:40 +0200 Subject: ipcpd: Add priority for raw flows The raw flows had no priority assigned, causing the scheduler to fail on creation. Signed-off-by: Dimitri Staessens Signed-off-by: Sander Vrijders --- src/ipcpd/CMakeLists.txt | 6 ++++++ src/ipcpd/config.h.in | 1 + src/ipcpd/normal/sdu_sched.c | 1 + 3 files changed, 8 insertions(+) diff --git a/src/ipcpd/CMakeLists.txt b/src/ipcpd/CMakeLists.txt index 39e597e0..d7523aeb 100644 --- a/src/ipcpd/CMakeLists.txt +++ b/src/ipcpd/CMakeLists.txt @@ -1,5 +1,7 @@ set(IPCP_ACCEPT_TIMEOUT 100 CACHE STRING "Timeout for accept in IPCP mainloop threads (ms)") +set(IPCP_QOS_CUBE_RAW_PRIO 50 CACHE STRING + "Priority for raw flow processing (0-99)") set(IPCP_QOS_CUBE_BE_PRIO 0 CACHE STRING "Priority for best effort QoS cube (0-99)") set(IPCP_QOS_CUBE_VIDEO_PRIO 90 CACHE STRING @@ -17,6 +19,10 @@ set(DISABLE_CORE_LOCK FALSE CACHE BOOL set(IPCP_CONN_WAIT_DIR TRUE CACHE BOOL "Check the running state of the directory when adding a dt connection") +if ((IPCP_QOS_CUBE_RAW_PRIO LESS 0) OR (IPCP_QOS_CUBE_RAW_PRIO GREATER 99)) + message(FATAL_ERROR "Invalid priority for raw flow") +endif () + 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 () diff --git a/src/ipcpd/config.h.in b/src/ipcpd/config.h.in index 197f51bc..b7806f60 100644 --- a/src/ipcpd/config.h.in +++ b/src/ipcpd/config.h.in @@ -38,6 +38,7 @@ #cmakedefine HAVE_LIBGCRYPT /* normal IPCP */ +#define QOS_PRIO_RAW @IPCP_QOS_CUBE_RAW_PRIO@ #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@ diff --git a/src/ipcpd/normal/sdu_sched.c b/src/ipcpd/normal/sdu_sched.c index 56455721..529da113 100644 --- a/src/ipcpd/normal/sdu_sched.c +++ b/src/ipcpd/normal/sdu_sched.c @@ -36,6 +36,7 @@ #include static int qos_prio [] = { + QOS_PRIO_RAW, QOS_PRIO_BE, QOS_PRIO_VIDEO, QOS_PRIO_VOICE -- cgit v1.2.3