(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 re-using existing timeout
buffer) may still be lock-less.
Removed the old "test" program odp_timer_ping.c.
Updated the example example/timer/odp_timer_test.c. More work is
probably needed here in order to mold this into a great example program
but that work is outside the scope of this patch set.
Added cunit test program test/validation/odp_timer.c.
Rebased with e.g. the new buffer API.
Updated timer API from Petri's review comments.
Rebased again.

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                     |  177 ++--
 platform/linux-generic/include/api/odp_timer.h     |  318 ++++--
 .../linux-generic/include/odp_timer_internal.h     |   59 +-
 platform/linux-generic/odp_timer.c                 | 1064 ++++++++++++++------
 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, 1497 insertions(+), 890 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
lng-odp@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to