Applied with important caveats

1. The test  stresses all cores in the system under test when using
linux-generic
implementation, this causes spurious failures when there is any other load
on the system during the test such as running gcov, valgrind or other odp
unit tests in parallel.
Since unit tests in tests/validation  are not intended to to be stress or
performance tests I have modified it to use once core less than is
available so that all the regression tools continue to work.
I think pending investigation from Ola, we will move this to
test/performance where we have the capacity to allow command line args for
the number of cores to use. In this dir we also expect the tests to be
stressful and can run on all cores. The remaining question will be how that
fits with test/validation test covering 100% of the API.

2. There are review comments outstanding against the test code itself,  as
I applied it I touched up the easy ones - I would have done them all but
issue 1. took my time. Ola has indicated he will correct these for 0.8.0
next week.
I fixed the copyright date and the includes.

This series as been pulled in to 0.7.0 with outstanding issues because it
un-freezes other work and the fixes to this series should be in place for
0.8.0 next week.



On 8 January 2015 at 17:52, Bill Fischofer <[email protected]>
wrote:

> For this series:
>
> Reviewed-and-tested-by: Bill Fischofer <[email protected]>
>
> On Thu, Jan 8, 2015 at 3:35 PM, Ola Liljedahl <[email protected]>
> wrote:
>
>> (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
>>
>
>
> _______________________________________________
> lng-odp mailing list
> [email protected]
> http://lists.linaro.org/mailman/listinfo/lng-odp
>
>


-- 
*Mike Holmes*
Linaro  Sr Technical Manager
LNG - ODP
_______________________________________________
lng-odp mailing list
[email protected]
http://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to