(This document/code contribution attached is provided under the terms of
agreement LES-LTM-21309)
The timer API is updated according to
https://docs.google.com/a/linaro.org/document/d/1bfY_J8ecLJPsFTmYftb0NVmGnB9qkEc_NpcJ87yfaD8
A major change is that timers are allocated and freed separately from
timeouts being set and cancelled. The life-length of a timer normally
corresponds to the life-length of the associated stateful flow while
the life-length of a timeout corresponds to individual packets being
transmitted and received.
The reference timer implementation is lock-less for platforms with
support for 128-bit (16-byte) atomic exchange and CAS operations.
Otherwise a lock-based implementation (using as many locks as desired)
is used but some operations (e.g. reset reusing existing timeout buffer)
may still be lock-less.
Removed the odp_timer_ping API "test".
Added a proper cunit test for the timer API.

Ola Liljedahl (3):
  test: odp_timer_ping: removed
  api: odp_timer.h: updated API, lock-less implementation
  test: odp_timer.h: cunit test

 example/timer/odp_timer_test.c                     |  183 ++--
 platform/linux-generic/include/api/odp_timer.h     |  321 ++++--
 .../linux-generic/include/odp_timer_internal.h     |   62 +-
 platform/linux-generic/odp_timer.c                 | 1054 ++++++++++++++------
 test/api_test/.gitignore                           |    1 -
 test/api_test/Makefile.am                          |    5 +-
 test/api_test/odp_timer_ping.c                     |  404 --------
 test/validation/.gitignore                         |    1 +
 test/validation/Makefile.am                        |    5 +-
 test/validation/odp_timer.c                        |  353 +++++++
 10 files changed, 1491 insertions(+), 898 deletions(-)
 delete mode 100644 test/api_test/odp_timer_ping.c
 create mode 100644 test/validation/odp_timer.c

-- 
1.9.1


_______________________________________________
lng-odp mailing list
[email protected]
http://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to