This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "".
The branch, master has been updated via f5e12df388352b27f09787028a0040afb28564f4 (commit) via 540051a97034d6e574520256f7b56a51451417e5 (commit) via 8f0c3fbfe9bb4d51b5e295686fbe247c5c84f569 (commit) via 6c1aa436a9242750428006258ff48bc68c13c5d4 (commit) via 5934c2c1c8232fe10b975057d5e8e4701ca3f363 (commit) via a8d1ed583074a43fd1258f3d3b6e018488173c44 (commit) via a924494119e6d672181aef529ba01c7e6a67951f (commit) from 3984ba4cd16a02e3fa98ccd432a06663de3fa993 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit f5e12df388352b27f09787028a0040afb28564f4 Author: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Date: Sat Feb 10 11:30:01 2018 +0300
shippable: run tests with all possible schedulers
Signed-off-by: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Reviewed-by: Bill Fischofer bill.fischofer@linaro.org Reviewed-by: Petri Savolainen petri.savolainen@linaro.org Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/.shippable.yml b/.shippable.yml index 6b2a73c3..c01e3608 100644 --- a/.shippable.yml +++ b/.shippable.yml @@ -41,10 +41,14 @@ build: - if [ "${CC#clang}" != "${CC}" ] ; then export CXX="${CC/clang/clang++}"; fi - ./configure $CONF - make -j $(nproc) - - sudo env ODP_SHM_DIR=/dev/shm/odp ODP_TEST_OUT_XML=yes make check -k - - on_success: - - ./scripts/shippable-post.sh + - sudo env ODP_SHM_DIR=/dev/shm/odp ODP_TEST_OUT_XML=yes ODP_SCHEDULER=basic make check + - ./scripts/shippable-post.sh basic + - sudo env ODP_SHM_DIR=/dev/shm/odp ODP_TEST_OUT_XML=yes ODP_SCHEDULER=sp make check + - ./scripts/shippable-post.sh sp + - sudo env ODP_SHM_DIR=/dev/shm/odp ODP_TEST_OUT_XML=yes ODP_SCHEDULER=iquery make check + - ./scripts/shippable-post.sh iquery + - sudo env ODP_SHM_DIR=/dev/shm/odp ODP_TEST_OUT_XML=yes ODP_SCHEDULER=scalable make check + - ./scripts/shippable-post.sh scalable
on_failure: - ./scripts/shippable-post.sh diff --git a/scripts/shippable-post.sh b/scripts/shippable-post.sh index ed5a4416..9d59da3f 100755 --- a/scripts/shippable-post.sh +++ b/scripts/shippable-post.sh @@ -2,8 +2,14 @@
wget https://raw.githubusercontent.com/shawnliang/cunit-to-junit/master/cunit-to-...
+mkdir -p "$SHIPPABLE_BUILD_DIR/shippable/testresults" + +SCHED=${1:-default} +echo $SCHED + for FILE in `find ./test ./platform/ -name "*.xml"`; do bname="`basename $FILE`"; + echo Processing $FILE as ${SCHED}-${bname} xsltproc --novalid cunit-to-junit.xsl "$FILE" > \ - "$SHIPPABLE_BUILD_DIR/shippable/testresults/${bname}" + "$SHIPPABLE_BUILD_DIR/shippable/testresults/${SCHED}-${bname}" done
commit 540051a97034d6e574520256f7b56a51451417e5 Author: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Date: Sat Feb 10 11:21:43 2018 +0300
shippable: switch to clang 4.0
Clang 3.8 will miscompile ODP, which results in testsuite crashes. Use clang 4.0 instead.
Signed-off-by: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Reviewed-by: Bill Fischofer bill.fischofer@linaro.org Reviewed-by: Petri Savolainen petri.savolainen@linaro.org Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/scripts/Dockerfile b/scripts/Dockerfile index 3e1d54db..b4c03ca4 100644 --- a/scripts/Dockerfile +++ b/scripts/Dockerfile @@ -8,7 +8,7 @@ RUN sudo apt-get update && sudo apt-get install -yy \ autoconf \ automake \ ccache \ - clang-3.8 \ + clang-4.0 \ gcc-4.8 \ graphviz \ kmod \ @@ -24,5 +24,5 @@ RUN sudo apt-get update && sudo apt-get install -yy \ xsltproc
RUN sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 10 -RUN sudo ln -s /usr/bin/clang-3.8 /usr/bin/clang -RUN sudo ln -s /usr/bin/clang++-3.8 /usr/bin/clang++ +RUN sudo ln -s /usr/bin/clang-4.0 /usr/bin/clang +RUN sudo ln -s /usr/bin/clang++-4.0 /usr/bin/clang++
commit 8f0c3fbfe9bb4d51b5e295686fbe247c5c84f569 Author: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Date: Sat Feb 10 03:22:58 2018 +0300
travis: test all schedulers in single pass
Run tests with all schedulers in default CONF setting and while doing coverage test.
Signed-off-by: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Reviewed-by: Bill Fischofer bill.fischofer@linaro.org Reviewed-by: Petri Savolainen petri.savolainen@linaro.org Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/.travis.yml b/.travis.yml index ca513581..167c7319 100644 --- a/.travis.yml +++ b/.travis.yml @@ -53,9 +53,6 @@ env: - CONF="" - CONF="--disable-abi-compat" - CONF="--enable-deprecated" - - CONF="--enable-schedule-sp" - - CONF="--enable-schedule-iquery" - - CONF="--enable-schedule-scalable" - CONF="--enable-dpdk-zero-copy" - CONF="--disable-static-applications" - CONF="--disable-host-optimization" @@ -253,8 +250,16 @@ script: $CROSS $EXTRA_CONF $CONF - make -j $(nproc) - mkdir /dev/shm/odp + # Run all tests only for default configuration - if [ -z "$CROSS_ARCH" ] ; then - sudo LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" ODP_SHM_DIR=/dev/shm/odp make check ; + if [ -n "$CONF" ] ; then + sudo LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" ODP_SHM_DIR=/dev/shm/odp make check ; + else + sudo ODP_SCHEDULER=basic LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" ODP_SHM_DIR=/dev/shm/odp make check ; + sudo ODP_SCHEDULER=sp LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" ODP_SHM_DIR=/dev/shm/odp make check ; + sudo ODP_SCHEDULER=iquery LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" ODP_SHM_DIR=/dev/shm/odp make check ; + sudo ODP_SCHEDULER=scalable LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" ODP_SHM_DIR=/dev/shm/odp make check ; + fi fi - make install
@@ -293,7 +298,10 @@ jobs: --enable-debug=full --enable-helper-linux - CCACHE_DISABLE=1 make -j $(nproc) - - sudo CCACHE_DISABLE=1 LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" PATH=${PATH//:./node_modules/.bin/} make check + - sudo CCACHE_DISABLE=1 ODP_SCHEDULER=basic LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" make check + - sudo CCACHE_DISABLE=1 ODP_SCHEDULER=sp LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" make check + - sudo CCACHE_DISABLE=1 ODP_SCHEDULER=iquery LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" make check + - sudo CCACHE_DISABLE=1 ODP_SCHEDULER=scalable LD_LIBRARY_PATH="$HOME/cunit-install/$CROSS_ARCH/lib:$LD_LIBRARY_PATH" make check - find . -type f -iname '*.[ch]' -not -path ".git/*" -execdir gcov {} ; ; bash <(curl -s https://codecov.io/bash) -X coveragepy - stage: test env: TEST=distcheck
commit 6c1aa436a9242750428006258ff48bc68c13c5d4 Author: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Date: Tue Feb 20 13:53:01 2018 +0300
linux-gen: schedule, queue: select scheduler/queue via environment
Use ODP_SCHEDULER environment variable to select scheduler/queue implementation.
Signed-off-by: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Reviewed-by: Bill Fischofer bill.fischofer@linaro.org Reviewed-by: Petri Savolainen petri.savolainen@linaro.org Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/platform/linux-generic/m4/odp_schedule.m4 b/platform/linux-generic/m4/odp_schedule.m4 index 087cff87..70be5a7d 100644 --- a/platform/linux-generic/m4/odp_schedule.m4 +++ b/platform/linux-generic/m4/odp_schedule.m4 @@ -1,23 +1,6 @@ -AC_ARG_ENABLE([schedule-sp], - [ --enable-schedule-sp enable strict priority scheduler], - [if test x$enableval = xyes; then - schedule_sp_enabled=yes - AC_DEFINE([ODP_SCHEDULE_SP], [1], - [Define to 1 to enable strict priority scheduler]) - fi]) - -AC_ARG_ENABLE([schedule-iquery], - [ --enable-schedule-iquery enable interests query (sparse bitmap) scheduler], - [if test x$enableval = xyes; then - schedule_iquery_enabled=yes - AC_DEFINE([ODP_SCHEDULE_IQUERY], [1], - [Define to 1 to enable interests query scheduler]) - fi]) - -AC_ARG_ENABLE([schedule_scalable], - [ --enable-schedule-scalable enable scalable scheduler], - [if test x$enableval = xyes; then - schedule_scalable_enabled=yes - AC_DEFINE([ODP_SCHEDULE_SCALABLE], [1], - [Define to 1 to enable scalable scheduler]) - fi]) +AC_ARG_ENABLE([scheduler-default], + [AS_HELP_STRING([enable-scheduler-default], + [Choose default scheduler (default is basic)])], + [], [enable_scheduler_default=basic]) +AC_DEFINE_UNQUOTED([ODP_SCHEDULE_DEFAULT], ["$enable_scheduler_default"], + [Define to name default scheduler]) diff --git a/platform/linux-generic/odp_queue_if.c b/platform/linux-generic/odp_queue_if.c index d1c46848..08076ab3 100644 --- a/platform/linux-generic/odp_queue_if.c +++ b/platform/linux-generic/odp_queue_if.c @@ -8,6 +8,10 @@
#include <odp_queue_if.h> #include <odp_internal.h> +#include <odp_debug_internal.h> + +#include <stdlib.h> +#include <string.h>
extern const queue_api_t queue_scalable_api; extern const queue_fn_t queue_scalable_fn; @@ -15,13 +19,8 @@ extern const queue_fn_t queue_scalable_fn; extern const queue_api_t queue_basic_api; extern const queue_fn_t queue_basic_fn;
-#ifdef ODP_SCHEDULE_SCALABLE -const queue_api_t *queue_api = &queue_scalable_api; -const queue_fn_t *queue_fn = &queue_scalable_fn; -#else -const queue_api_t *queue_api = &queue_basic_api; -const queue_fn_t *queue_fn = &queue_basic_fn; -#endif +const queue_api_t *queue_api; +const queue_fn_t *queue_fn;
odp_queue_t odp_queue_create(const char *name, const odp_queue_param_t *param) { @@ -115,6 +114,24 @@ int odp_queue_info(odp_queue_t queue, odp_queue_info_t *info)
int _odp_queue_init_global(void) { + const char *sched = getenv("ODP_SCHEDULER"); + + if (sched == NULL || !strcmp(sched, "default")) + sched = ODP_SCHEDULE_DEFAULT; + + if (!strcmp(sched, "basic") || + !strcmp(sched, "sp") || + !strcmp(sched, "iquery")) { + queue_fn = &queue_basic_fn; + queue_api = &queue_basic_api; + } else if (!strcmp(sched, "scalable")) { + queue_fn = &queue_scalable_fn; + queue_api = &queue_scalable_api; + } else { + ODP_ABORT("Unknown scheduler specified via ODP_SCHEDULER\n"); + return -1; + } + return queue_fn->init_global(); }
diff --git a/platform/linux-generic/odp_schedule_if.c b/platform/linux-generic/odp_schedule_if.c index 4639ad73..08520852 100644 --- a/platform/linux-generic/odp_schedule_if.c +++ b/platform/linux-generic/odp_schedule_if.c @@ -8,6 +8,10 @@
#include <odp_schedule_if.h> #include <odp_internal.h> +#include <odp_debug_internal.h> + +#include <stdlib.h> +#include <string.h>
extern const schedule_fn_t schedule_sp_fn; extern const schedule_api_t schedule_sp_api; @@ -21,19 +25,8 @@ extern const schedule_api_t schedule_iquery_api; extern const schedule_fn_t schedule_scalable_fn; extern const schedule_api_t schedule_scalable_api;
-#ifdef ODP_SCHEDULE_SP -const schedule_fn_t *sched_fn = &schedule_sp_fn; -const schedule_api_t *sched_api = &schedule_sp_api; -#elif defined(ODP_SCHEDULE_IQUERY) -const schedule_fn_t *sched_fn = &schedule_iquery_fn; -const schedule_api_t *sched_api = &schedule_iquery_api; -#elif defined(ODP_SCHEDULE_SCALABLE) -const schedule_fn_t *sched_fn = &schedule_scalable_fn; -const schedule_api_t *sched_api = &schedule_scalable_api; -#else -const schedule_fn_t *sched_fn = &schedule_basic_fn; -const schedule_api_t *sched_api = &schedule_basic_api; -#endif +const schedule_fn_t *sched_fn; +const schedule_api_t *sched_api;
uint64_t odp_schedule_wait_time(uint64_t ns) { @@ -148,6 +141,30 @@ void odp_schedule_order_lock_wait(uint32_t lock_index)
int _odp_schedule_init_global(void) { + const char *sched = getenv("ODP_SCHEDULER"); + + if (sched == NULL || !strcmp(sched, "default")) + sched = ODP_SCHEDULE_DEFAULT; + + ODP_PRINT("Using scheduler '%s'\n", sched); + + if (!strcmp(sched, "basic")) { + sched_fn = &schedule_basic_fn; + sched_api = &schedule_basic_api; + } else if (!strcmp(sched, "sp")) { + sched_fn = &schedule_sp_fn; + sched_api = &schedule_sp_api; + } else if (!strcmp(sched, "iquery")) { + sched_fn = &schedule_iquery_fn; + sched_api = &schedule_iquery_api; + } else if (!strcmp(sched, "scalable")) { + sched_fn = &schedule_scalable_fn; + sched_api = &schedule_scalable_api; + } else { + ODP_ABORT("Unknown scheduler specified via ODP_SCHEDULER\n"); + return -1; + } + return sched_fn->init_global(); }
commit 5934c2c1c8232fe10b975057d5e8e4701ca3f363 Author: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Date: Tue Feb 20 13:48:06 2018 +0300
linux-gen: rename traditional scheduler and queue to basic
Rename traditional scheduler and queue implementations to basic.
Signed-off-by: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Reviewed-by: Bill Fischofer bill.fischofer@linaro.org Reviewed-by: Petri Savolainen petri.savolainen@linaro.org Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/platform/linux-generic/Makefile.am b/platform/linux-generic/Makefile.am index 1feecd3b..b6e19555 100644 --- a/platform/linux-generic/Makefile.am +++ b/platform/linux-generic/Makefile.am @@ -172,13 +172,13 @@ __LIB__libodp_linux_la_SOURCES = \ pktio/ring.c \ odp_pkt_queue.c \ odp_pool.c \ - odp_queue.c \ + odp_queue_basic.c \ odp_queue_if.c \ odp_queue_lf.c \ odp_queue_scalable.c \ odp_rwlock.c \ odp_rwlock_recursive.c \ - odp_schedule.c \ + odp_schedule_basic.c \ odp_schedule_if.c \ odp_schedule_sp.c \ odp_schedule_iquery.c \ diff --git a/platform/linux-generic/odp_queue.c b/platform/linux-generic/odp_queue_basic.c similarity index 99% rename from platform/linux-generic/odp_queue.c rename to platform/linux-generic/odp_queue_basic.c index a7933c9b..0c0a11ec 100644 --- a/platform/linux-generic/odp_queue.c +++ b/platform/linux-generic/odp_queue_basic.c @@ -790,7 +790,7 @@ static odp_queue_t queue_to_ext(queue_t q_int) }
/* API functions */ -queue_api_t queue_default_api = { +queue_api_t queue_basic_api = { .queue_create = queue_create, .queue_destroy = queue_destroy, .queue_lookup = queue_lookup, @@ -812,7 +812,7 @@ queue_api_t queue_default_api = { };
/* Functions towards internal components */ -queue_fn_t queue_default_fn = { +queue_fn_t queue_basic_fn = { .init_global = queue_init_global, .term_global = queue_term_global, .init_local = queue_init_local, diff --git a/platform/linux-generic/odp_queue_if.c b/platform/linux-generic/odp_queue_if.c index e1cfc944..d1c46848 100644 --- a/platform/linux-generic/odp_queue_if.c +++ b/platform/linux-generic/odp_queue_if.c @@ -12,15 +12,15 @@ extern const queue_api_t queue_scalable_api; extern const queue_fn_t queue_scalable_fn;
-extern const queue_api_t queue_default_api; -extern const queue_fn_t queue_default_fn; +extern const queue_api_t queue_basic_api; +extern const queue_fn_t queue_basic_fn;
#ifdef ODP_SCHEDULE_SCALABLE const queue_api_t *queue_api = &queue_scalable_api; const queue_fn_t *queue_fn = &queue_scalable_fn; #else -const queue_api_t *queue_api = &queue_default_api; -const queue_fn_t *queue_fn = &queue_default_fn; +const queue_api_t *queue_api = &queue_basic_api; +const queue_fn_t *queue_fn = &queue_basic_fn; #endif
odp_queue_t odp_queue_create(const char *name, const odp_queue_param_t *param) diff --git a/platform/linux-generic/odp_schedule.c b/platform/linux-generic/odp_schedule_basic.c similarity index 99% rename from platform/linux-generic/odp_schedule.c rename to platform/linux-generic/odp_schedule_basic.c index a6581bed..7195eede 100644 --- a/platform/linux-generic/odp_schedule.c +++ b/platform/linux-generic/odp_schedule_basic.c @@ -1407,7 +1407,7 @@ static int schedule_num_grps(void) }
/* Fill in scheduler interface */ -const schedule_fn_t schedule_default_fn = { +const schedule_fn_t schedule_basic_fn = { .status_sync = 0, .pktio_start = schedule_pktio_start, .thr_add = schedule_thr_add, @@ -1429,7 +1429,7 @@ const schedule_fn_t schedule_default_fn = { };
/* Fill in scheduler API calls */ -const schedule_api_t schedule_default_api = { +const schedule_api_t schedule_basic_api = { .schedule_wait_time = schedule_wait_time, .schedule = schedule, .schedule_multi = schedule_multi, diff --git a/platform/linux-generic/odp_schedule_if.c b/platform/linux-generic/odp_schedule_if.c index 71d4ee75..4639ad73 100644 --- a/platform/linux-generic/odp_schedule_if.c +++ b/platform/linux-generic/odp_schedule_if.c @@ -12,8 +12,8 @@ extern const schedule_fn_t schedule_sp_fn; extern const schedule_api_t schedule_sp_api;
-extern const schedule_fn_t schedule_default_fn; -extern const schedule_api_t schedule_default_api; +extern const schedule_fn_t schedule_basic_fn; +extern const schedule_api_t schedule_basic_api;
extern const schedule_fn_t schedule_iquery_fn; extern const schedule_api_t schedule_iquery_api; @@ -31,8 +31,8 @@ const schedule_api_t *sched_api = &schedule_iquery_api; const schedule_fn_t *sched_fn = &schedule_scalable_fn; const schedule_api_t *sched_api = &schedule_scalable_api; #else -const schedule_fn_t *sched_fn = &schedule_default_fn; -const schedule_api_t *sched_api = &schedule_default_api; +const schedule_fn_t *sched_fn = &schedule_basic_fn; +const schedule_api_t *sched_api = &schedule_basic_api; #endif
uint64_t odp_schedule_wait_time(uint64_t ns)
commit a8d1ed583074a43fd1258f3d3b6e018488173c44 Author: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Date: Sat Feb 10 02:43:52 2018 +0300
linux-gen: sched: encapsulate sched init/term_global functions
Hide calling into sched_fn into sched_if module.
Signed-off-by: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Reviewed-by: Bill Fischofer bill.fischofer@linaro.org Reviewed-by: Petri Savolainen petri.savolainen@linaro.org Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/platform/linux-generic/include/odp_internal.h b/platform/linux-generic/include/odp_internal.h index b8d79154..c2122898 100644 --- a/platform/linux-generic/include/odp_internal.h +++ b/platform/linux-generic/include/odp_internal.h @@ -103,6 +103,9 @@ int odp_pool_term_local(void); int _odp_queue_init_global(void); int _odp_queue_term_global(void);
+int _odp_schedule_init_global(void); +int _odp_schedule_term_global(void); + int odp_pktio_init_global(void); int odp_pktio_term_global(void); int odp_pktio_init_local(void); diff --git a/platform/linux-generic/odp_init.c b/platform/linux-generic/odp_init.c index aa0885da..325c1fb9 100644 --- a/platform/linux-generic/odp_init.c +++ b/platform/linux-generic/odp_init.c @@ -96,7 +96,7 @@ int odp_init_global(odp_instance_t *instance, } stage = QUEUE_INIT;
- if (sched_fn->init_global()) { + if (_odp_schedule_init_global()) { ODP_ERR("ODP schedule init failed.\n"); goto init_failed; } @@ -231,7 +231,7 @@ int _odp_term_global(enum init_stage stage) /* Fall through */
case SCHED_INIT: - if (sched_fn->term_global()) { + if (_odp_schedule_term_global()) { ODP_ERR("ODP schedule term failed.\n"); rc = -1; } diff --git a/platform/linux-generic/odp_schedule_if.c b/platform/linux-generic/odp_schedule_if.c index 6a3b4e4b..71d4ee75 100644 --- a/platform/linux-generic/odp_schedule_if.c +++ b/platform/linux-generic/odp_schedule_if.c @@ -7,6 +7,7 @@ #include "config.h"
#include <odp_schedule_if.h> +#include <odp_internal.h>
extern const schedule_fn_t schedule_sp_fn; extern const schedule_api_t schedule_sp_api; @@ -145,3 +146,12 @@ void odp_schedule_order_lock_wait(uint32_t lock_index) sched_api->schedule_order_lock_wait(lock_index); }
+int _odp_schedule_init_global(void) +{ + return sched_fn->init_global(); +} + +int _odp_schedule_term_global(void) +{ + return sched_fn->term_global(); +}
commit a924494119e6d672181aef529ba01c7e6a67951f Author: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Date: Sat Feb 10 02:43:52 2018 +0300
linux-gen: queue: encapsulate queue init/term_global functions
Hide calling into queue_fn into queue_if module.
Signed-off-by: Dmitry Eremin-Solenikov dmitry.ereminsolenikov@linaro.org Reviewed-by: Bill Fischofer bill.fischofer@linaro.org Reviewed-by: Petri Savolainen petri.savolainen@linaro.org Signed-off-by: Maxim Uvarov maxim.uvarov@linaro.org
diff --git a/platform/linux-generic/include/odp_internal.h b/platform/linux-generic/include/odp_internal.h index 444e1163..b8d79154 100644 --- a/platform/linux-generic/include/odp_internal.h +++ b/platform/linux-generic/include/odp_internal.h @@ -100,6 +100,9 @@ int odp_pool_init_local(void); int odp_pool_term_global(void); int odp_pool_term_local(void);
+int _odp_queue_init_global(void); +int _odp_queue_term_global(void); + int odp_pktio_init_global(void); int odp_pktio_term_global(void); int odp_pktio_init_local(void); diff --git a/platform/linux-generic/odp_init.c b/platform/linux-generic/odp_init.c index a2d9d52f..aa0885da 100644 --- a/platform/linux-generic/odp_init.c +++ b/platform/linux-generic/odp_init.c @@ -90,7 +90,7 @@ int odp_init_global(odp_instance_t *instance, } stage = POOL_INIT;
- if (queue_fn->init_global()) { + if (_odp_queue_init_global()) { ODP_ERR("ODP queue init failed.\n"); goto init_failed; } @@ -238,7 +238,7 @@ int _odp_term_global(enum init_stage stage) /* Fall through */
case QUEUE_INIT: - if (queue_fn->term_global()) { + if (_odp_queue_term_global()) { ODP_ERR("ODP queue term failed.\n"); rc = -1; } diff --git a/platform/linux-generic/odp_queue_if.c b/platform/linux-generic/odp_queue_if.c index 969b0d3c..e1cfc944 100644 --- a/platform/linux-generic/odp_queue_if.c +++ b/platform/linux-generic/odp_queue_if.c @@ -7,6 +7,7 @@ #include "config.h"
#include <odp_queue_if.h> +#include <odp_internal.h>
extern const queue_api_t queue_scalable_api; extern const queue_fn_t queue_scalable_fn; @@ -111,3 +112,13 @@ int odp_queue_info(odp_queue_t queue, odp_queue_info_t *info) { return queue_api->queue_info(queue, info); } + +int _odp_queue_init_global(void) +{ + return queue_fn->init_global(); +} + +int _odp_queue_term_global(void) +{ + return queue_fn->term_global(); +}
-----------------------------------------------------------------------
Summary of changes: .shippable.yml | 12 +++-- .travis.yml | 18 +++++-- platform/linux-generic/Makefile.am | 4 +- platform/linux-generic/include/odp_internal.h | 6 +++ platform/linux-generic/m4/odp_schedule.m4 | 29 +++-------- platform/linux-generic/odp_init.c | 8 +-- .../{odp_queue.c => odp_queue_basic.c} | 4 +- platform/linux-generic/odp_queue_if.c | 46 +++++++++++++---- .../{odp_schedule.c => odp_schedule_basic.c} | 4 +- platform/linux-generic/odp_schedule_if.c | 57 ++++++++++++++++------ scripts/Dockerfile | 6 +-- scripts/shippable-post.sh | 8 ++- 12 files changed, 132 insertions(+), 70 deletions(-) rename platform/linux-generic/{odp_queue.c => odp_queue_basic.c} (99%) rename platform/linux-generic/{odp_schedule.c => odp_schedule_basic.c} (99%)
hooks/post-receive