[PATCH] eventdev/timer: move buffer flush call

2023-04-12 Thread Erik Gabriel Carrillo
flush call so that it happens with every invocation of the service function, rather than on every adapter tick, to avoid the delay. Fixes: cc7b73ea9e3b ("eventdev: add new software timer adapter") Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo --- lib/eventdev/rte_event_timer

[PATCH v3] eventdev/timer: fix overflow issue

2023-02-09 Thread Erik Gabriel Carrillo
timer adapter") Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo --- v3: * Use integer operations instead of floating point, and use rte_reciprocal_divide() for division. v2: * Fix implicit int to float conversion build warning on Clang lib/eventdev/rte_event_timer_adap

[PATCH v2] eventdev/timer: fix overflow issue

2023-01-24 Thread Erik Gabriel Carrillo
an integer type when returning. Also move the logic that checks the timeout range into the function that performs the above computation. Fixes: 6750b21bd6af ("eventdev: add default software timer adapter") Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo --- v2: * Fix impli

[PATCH] eventdev/timer: fix overflow issue

2023-01-24 Thread Erik Gabriel Carrillo
an integer type when returning. Also move the logic that checks the timeout range into the function that performs the above computation. Fixes: 6750b21bd6af ("eventdev: add default software timer adapter") Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo --- li

[PATCH v4] eventdev/timer: add API to get remaining ticks

2023-01-13 Thread Erik Gabriel Carrillo
Introduce an event timer adapter API which allows users to determine how many adapter ticks remain until an event timer expires. Signed-off-by: Erik Gabriel Carrillo --- v4: * Rename API to rte_event_timer_remaining_ticks_get * Return error if API out param is NULL instead asserting it is non

[PATCH v3] eventdev/timer: add API to get remaining ticks

2022-12-19 Thread Erik Gabriel Carrillo
Introduce an event timer adapter API which allows users to determine how many adapter ticks remain until an event timer fires. Signed-off-by: Erik Gabriel Carrillo --- v3: * Handle ENOTSUP case in unit test v2: * Rename API to rte_event_timer_get_remaining_ticks * Assert that API out param is

[PATCH v2] eventdev/timer: add API to get remaining ticks

2022-12-19 Thread Erik Gabriel Carrillo
Introduce an event timer adapter API which allows users to determine how many adapter ticks remain until an event timer fires. Signed-off-by: Erik Gabriel Carrillo --- v2: * Rename API to rte_event_timer_get_remaining_ticks * Assert that API out param is non-NULL instead of checking and

[PATCH] eventdev/timer: add API to get remaining ticks

2022-12-16 Thread Erik Gabriel Carrillo
Introduce an event timer adapter API which allows users to determine how many adapter ticks remain until an event timer fires. Signed-off-by: Erik Gabriel Carrillo --- app/test/test_event_timer_adapter.c| 68 ++ lib/eventdev/event_timer_adapter_pmd.h | 7 +++ lib

[PATCH] service: fix early move to inactive status

2022-10-20 Thread Erik Gabriel Carrillo
we: - don't let the "service_active_on_lcore" state linger as 1 - don't clear the state early Fixes: 6550113be62d ("service: fix lingering active status") Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo --- lib/eal/common/rte_service.c | 13 +++-- 1 file ch

[dpdk-dev] [PATCH] eventdev: fix free of adapters storage

2021-10-20 Thread Erik Gabriel Carrillo
Fix a typo that can cause the hugepage memory that backs the adapters array to be freed unexpectedly. Fixes: e9caa6a09a "eventdev: move timer adapters memory to hugepage") Signed-off-by: Erik Gabriel Carrillo --- lib/eventdev/rte_event_timer_adapter.c | 2 +- 1 file changed, 1 inser

[dpdk-dev] [PATCH 1/1] timer: add limitation note for sync stop and reset

2020-09-09 Thread Erik Gabriel Carrillo
reset_sync documentation that indicates that these APIs should not be used inside timer callback functions in order to avoid the hangs described above, and suggests an alternative. Bugzilla ID: 491 Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/rte_ti

[dpdk-dev] [PATCH 0/1] timer: add limitation note for sync stop and reset

2020-09-09 Thread Erik Gabriel Carrillo
proposed to document a usage limitation[1]. This patch adds the notes. [1] https://patches.dpdk.org/patch/75142/ Erik Gabriel Carrillo (1): timer: add limitation note for sync stop and reset lib/librte_timer/rte_timer.h | 12 1 file changed, 12 insertions(+) -- 2.6.4

[dpdk-dev] [PATCH] timer: remove experimental tag for some APIs

2020-09-08 Thread Erik Gabriel Carrillo
Some new APIs were added to the timer library in the 19.05 release, and there have been no changes to their interfaces since then. These functions can be considered stable enough to remove their 'experimental' tag. Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/r

[dpdk-dev] [PATCH 2/2] examples/performance-thread: init timer subsystem

2019-07-15 Thread Erik Gabriel Carrillo
The timer subsystem should be initialized in the l3fwd-thread app before the L-thread subsystem can be used. Fixes: d48415e1fee3 ("examples/performance-thread: add l3fwd-thread app") Cc: sta...@dpdk.org Cc: ian.be...@intel.com Signed-off-by: Erik Gabriel Carrillo --- examples/p

[dpdk-dev] [PATCH 0/2] fix segfault seen with performance-thread example

2019-07-15 Thread Erik Gabriel Carrillo
dereferenced in a check for validity of a timer data object, resulting in the segfault. This series fixes the validity check in the timer library, and adds the missing call to rte_timer_subsystem_init in the application. Erik Gabriel Carrillo (2): timer: fix null pointer dereference examples

[dpdk-dev] [PATCH 1/2] timer: fix null pointer dereference

2019-07-15 Thread Erik Gabriel Carrillo
;) Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/rte_timer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/librte_timer/rte_timer.c b/lib/librte_timer/rte_timer.c index 71dffd2..bdcf05d 100644 --- a/lib/librte_timer/rte_timer.c

[dpdk-dev] [PATCH v8 1/1] eventdev: add new software event timer adapter

2019-06-19 Thread Erik Gabriel Carrillo
% improvement in arm latency in the non-burst case and a 65% improvement in arm latency in the burst case. Note: To perform the test, I commented out a check in the original version that checks the adapter tick interval against a minimum value. Signed-off-by: Erik Gabriel Carrillo --- lib

[dpdk-dev] [PATCH v8 0/1] New software event timer adapter

2019-06-19 Thread Erik Gabriel Carrillo
Mattias Ronnblom: - remove unnecessary header include - remove unnecessary cast in mempool_put() call - update alignment of elements of array to avoid false sharing issue Changes in v2: - split this change out into its own patch series Erik Gabriel Carrillo (1): eventdev: add new

[dpdk-dev] [PATCH v7 0/1] New software event timer adapter

2019-06-19 Thread Erik Gabriel Carrillo
issue Changes in v2: - split this change out into its own patch series Erik Gabriel Carrillo (1): eventdev: add new software event timer adapter lib/librte_eventdev/rte_event_timer_adapter.c | 741 +++--- 1 file changed, 322 insertions(+), 419 deletions(-) -- 2.6.4

[dpdk-dev] [PATCH v7 1/1] eventdev: add new software event timer adapter

2019-06-19 Thread Erik Gabriel Carrillo
% improvement in arm latency in the non-burst case and a 65% improvement in arm latency in the burst case. Note: To perform the test, I commented out a check in the original version that checks the adapter tick interval against a minimum value. Signed-off-by: Erik Gabriel Carrillo --- lib

[dpdk-dev] [PATCH] doc: fix doxygen documentation for timer API

2019-05-10 Thread Erik Gabriel Carrillo
Now that some of the symbols in the timer lib are versioned, the Doxygen documentation that is generated is incorrect. Group all versioned symbols, listing the generic name first, and remove comments for older versions of symbols. Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer

[dpdk-dev] [PATCH v2] timer: allow first subsystem init from secondary

2019-05-09 Thread Erik Gabriel Carrillo
Since memzones can be reserved from secondary processes as well as primary processes, if the first call to the timer subsystem init function occurs in a secondary process, we should allow it to succeed. Fixes: c0749f7096c7 ("timer: allow management in shared memory") Signed-off-by: Er

[dpdk-dev] [PATCH v2] doc: add deprecation notice on EAL mem config

2019-05-09 Thread Erik Gabriel Carrillo
It is planned to make the rte_mem_config struct of the EAL private to remove it from the visible ABI. Add a notice to announce the intention. Signed-off-by: Erik Gabriel Carrillo --- changes in v2: - Original deprecation notice announced a change to the rte_mem_config struct that would

[dpdk-dev] [PATCH] doc: add deprecation notice on timer lib cleanup

2019-05-08 Thread Erik Gabriel Carrillo
processes. [1] http://patches.dpdk.org/patch/53334/ Signed-off-by: Erik Gabriel Carrillo --- doc/guides/rel_notes/deprecation.rst | 4 1 file changed, 4 insertions(+) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index b47c8c2..7551383 100644 --- a/doc

[dpdk-dev] [PATCH v3] timer: fix resource leak in finalize

2019-05-08 Thread Erik Gabriel Carrillo
By using a lock added to the rte_mem_config (which lives in shared memory), we can synchronize multiple processes in init/finalize and safely free allocations made during init. Signed-off-by: Erik Gabriel Carrillo --- changes in v3: - The previous version had race condition. This version fixes

[dpdk-dev] [PATCH] timer: allow first subsystem init from secondary

2019-05-08 Thread Erik Gabriel Carrillo
Since memzones can be reserved from secondary processes as well as primary processes, if the first call to the timer subsystem init function occurs in a secondary process, we should allow it to succeed. Fixes: c0749f7096c7 ("timer: allow management in shared memory") Signed-off-by: Er

[dpdk-dev] [PATCH] doc: update release notes for timer library changes

2019-05-06 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo --- doc/guides/rel_notes/release_19_05.rst | 8 1 file changed, 8 insertions(+) diff --git a/doc/guides/rel_notes/release_19_05.rst b/doc/guides/rel_notes/release_19_05.rst index 5044ac7..f4457ac 100644 --- a/doc/guides/rel_notes/release_19_05.rst

[dpdk-dev] [PATCH] test: call timer subsystem finalize at exit

2019-05-06 Thread Erik Gabriel Carrillo
rte_timer_subsystem_finalize() at application exit time to release allocations now made by the timer library. Fixes: c0749f7096c7 ("timer: allow management in shared memory") Signed-off-by: Erik Gabriel Carrillo --- app/test/test.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/test/test.c

[dpdk-dev] [PATCH v2] timer: fix resource leak in finalize

2019-05-03 Thread Erik Gabriel Carrillo
The finalize function should free the memzone created in the init function, rather than freeing the allocation the memzone references, otherwise a memzone descriptor can be leaked. Fixes: c0749f7096c7 ("timer: allow management in shared memory") Signed-off-by: Erik Gabriel Carrillo -

[dpdk-dev] [PATCH] timer: fix resource leak in finalize

2019-05-01 Thread Erik Gabriel Carrillo
The finalize function should free the memzone created in the init function, rather than freeing the allocation the memzone references, otherwise a memzone descriptor can be leaked. Fixes: c0749f7096c7 ("timer: allow management in shared memory") Signed-off-by: Erik Gabriel Carrillo

[dpdk-dev] [PATCH v2] doc: update references to removed function

2019-04-29 Thread Erik Gabriel Carrillo
t;eventdev: add eth Tx adapter APIs") Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo Acked-by: Jerin Jacob --- Changes in v2: - Add instance that was missed in rte_event_eth_tx_adapter.h (Jerin) lib/librte_eventdev/rte_event_eth_tx_adapter.h | 3 ++- lib/librte_eve

[dpdk-dev] [PATCH] doc: update references to removed function

2019-04-26 Thread Erik Gabriel Carrillo
Remove references to the (deleted) rte_event_port_enqueue_depth() function in the Doxygen comments for rte_event_enqueue_burst() and friends, and replace with references to rte_event_port_attr_get(). Fixes: 78ffab961155 ("eventdev: add port attribute function") Signed-off-by: Er

[dpdk-dev] [PATCH v6 1/1] eventdev: add new software event timer adapter

2019-04-26 Thread Erik Gabriel Carrillo
performance, this version does away with the ring and lets lcores in both primary and secondary processes insert timers directly into timer skiplist data structures; the service core directly accesses the lists as well, when looking for timers that have expired. Signed-off-by: Erik Gabriel

[dpdk-dev] [PATCH v6 0/1] New software event timer adapter

2019-04-26 Thread Erik Gabriel Carrillo
from Mattias Ronnblom: - remove unnecessary header include - remove unnecessary cast in mempool_put() call - update alignment of elements of array to avoid false sharing issue Changes in v2: - split this change out into its own patch series Erik Gabriel Carrillo (1): eventdev: add new

[dpdk-dev] [PATCH] timer: fix reset/stop in callback for new API

2019-04-26 Thread Erik Gabriel Carrillo
timer: allow management in shared memory") Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/rte_timer.c | 13 + 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/lib/librte_timer/rte_timer.c b/lib/librte_timer/rte_timer.c index d443b8c..9f2e921 100644 --- a/lib/li

[dpdk-dev] [PATCH] timer: fix pointer to local outside scope

2019-04-24 Thread Erik Gabriel Carrillo
scope instead. Coverity issue: 337919 Fixes: c0749f7096c7 ("timer: allow management in shared memory") Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/rte_timer.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/librte_timer/rte

[dpdk-dev] [PATCH v5 0/1] New software event timer adapter

2019-04-22 Thread Erik Gabriel Carrillo
in mempool_put() call - update alignment of elements of array to avoid false sharing issue Changes in v2: - split this change out into its own patch series Erik Gabriel Carrillo (1): eventdev: add new software event timer adapter lib/librte_eventdev/rte_event_timer_adapter.c | 703

[dpdk-dev] [PATCH v5 1/1] eventdev: add new software event timer adapter

2019-04-22 Thread Erik Gabriel Carrillo
performance, this version does away with the ring and lets lcores in both primary and secondary processes insert timers directly into timer skiplist data structures; the service core directly accesses the lists as well, when looking for timers that have expired. Signed-off-by: Erik Gabriel

[dpdk-dev] [PATCH] test/timer: exercise new APIs in secondary process

2019-04-18 Thread Erik Gabriel Carrillo
This commit adds an autotest which exercises new timer reset/stop APIs in a secondary process. Timers are created, and sometimes stopped, in the secondary process, and their expiration is checked for and handled in the primary process. Signed-off-by: Erik Gabriel Carrillo --- app/test/Makefile

[dpdk-dev] [PATCH v5 2/2] timer: add function to stop all timers in a list

2019-04-15 Thread Erik Gabriel Carrillo
Add a function to the timer API that allows a caller to traverse a specified set of timer lists, stopping each timer in each list, and invoking a callback function. Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/rte_timer.c | 38 ++ lib

[dpdk-dev] [PATCH v5 1/2] timer: allow timer management in shared memory

2019-04-15 Thread Erik Gabriel Carrillo
Erik Gabriel Carrillo --- lib/librte_timer/Makefile | 1 + lib/librte_timer/rte_timer.c | 519 ++--- lib/librte_timer/rte_timer.h | 226 +- lib/librte_timer/rte_timer_version.map | 22 ++ 4 files changed, 723 insertions(+

[dpdk-dev] [PATCH v5 0/2] Timer library changes

2019-04-15 Thread Erik Gabriel Carrillo
original behavior. Validated ABI compatibility with validate-abi.sh - refactor changes to simplify patches Erik Gabriel Carrillo (2): timer: allow timer management in shared memory timer: add function to stop all timers in a list lib/librte_timer/Makefile | 1 + lib/librt

[dpdk-dev] [PATCH] maintainers: claim responsibility for timer lib

2019-03-11 Thread Erik Gabriel Carrillo
Add myself as co-maintainer for the timer library. Signed-off-by: Erik Gabriel Carrillo --- MAINTAINERS | 1 + 1 file changed, 1 insertion(+) diff --git a/MAINTAINERS b/MAINTAINERS index 097cfb4..4b0beec 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1192,6 +1192,7 @@ F: doc/guides

[dpdk-dev] [PATCH v4 1/2] timer: allow timer management in shared memory

2019-03-06 Thread Erik Gabriel Carrillo
Erik Gabriel Carrillo --- lib/librte_timer/Makefile | 1 + lib/librte_timer/rte_timer.c | 519 ++--- lib/librte_timer/rte_timer.h | 226 +- lib/librte_timer/rte_timer_version.map | 22 ++ 4 files changed, 723 insertions(+

[dpdk-dev] [PATCH v4 2/2] timer: add function to stop all timers in a list

2019-03-06 Thread Erik Gabriel Carrillo
Add a function to the timer API that allows a caller to traverse a specified set of timer lists, stopping each timer in each list, and invoking a callback function. Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/rte_timer.c | 39 ++ lib

[dpdk-dev] [PATCH v4 0/2] Timer library changes

2019-03-06 Thread Erik Gabriel Carrillo
n with behavior equivalent to original behavior. Validated ABI compatibility with validate-abi.sh - refactor changes to simplify patches Erik Gabriel Carrillo (2): timer: allow timer management in shared memory timer: add function to stop all timers in a list lib/librte_timer/Makefile

[dpdk-dev] [PATCH v2] timer: fix race condition

2018-12-19 Thread Erik Gabriel Carrillo
her by rte_timer_manage() This commit fixes this race condition by only releasing the spinlock after the timer state has been transitioned from CONFIG to PENDING, which prevents rte_timer_manage() from seeing an incorrect state. Fixes: 9b15ba895b9f ("timer: use a skip list") Signed-

[dpdk-dev] [PATCH v4 0/1] New software event timer adapter

2018-12-14 Thread Erik Gabriel Carrillo
: - split this change out into its own patch series Erik Gabriel Carrillo (1): eventdev: add new software event timer adapter lib/librte_eventdev/rte_event_timer_adapter.c | 689 +++--- 1 file changed, 277 insertions(+), 412 deletions(-) -- 2.6.4

[dpdk-dev] [PATCH v4 1/1] eventdev: add new software event timer adapter

2018-12-14 Thread Erik Gabriel Carrillo
performance, this version does away with the ring and lets lcores in both primary and secondary processes insert timers directly into timer skiplist data structures; the service core directly accesses the lists as well, when looking for timers that have expired. Signed-off-by: Erik Gabriel

[dpdk-dev] [PATCH v3 1/1] eventdev: add new software event timer adapter

2018-12-14 Thread Erik Gabriel Carrillo
performance, this version does away with the ring and lets lcores in both primary and secondary processes insert timers directly into timer skiplist data structures; the service core directly accesses the lists as well, when looking for timers that have expired. Signed-off-by: Erik Gabriel

[dpdk-dev] [PATCH v3 0/1] New software event timer adapter

2018-12-14 Thread Erik Gabriel Carrillo
unnecessary cast in mempool_put() call - update alignment of elements of array to avoid false sharing issue Changes in v2: - split this change out into its own patch series Erik Gabriel Carrillo (1): eventdev: add new software event timer adapter lib/librte_eventdev

[dpdk-dev] [PATCH v3 2/2] timer: add function to stop all timers in a list

2018-12-13 Thread Erik Gabriel Carrillo
Add a function to the timer API that allows a caller to traverse a specified set of timer lists, stopping each timer in each list, and invoking a callback function. Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/rte_timer.c | 39 ++ lib

[dpdk-dev] [PATCH v3 0/2] Timer library changes

2018-12-13 Thread Erik Gabriel Carrillo
.sh - refactor changes to simplify patches Erik Gabriel Carrillo (2): timer: allow timer management in shared memory timer: add function to stop all timers in a list lib/librte_timer/Makefile | 1 + lib/librte_timer/rte_timer.c | 558 ++--- l

[dpdk-dev] [PATCH v3 1/2] timer: allow timer management in shared memory

2018-12-13 Thread Erik Gabriel Carrillo
Erik Gabriel Carrillo --- lib/librte_timer/Makefile | 1 + lib/librte_timer/rte_timer.c | 519 ++--- lib/librte_timer/rte_timer.h | 226 +- lib/librte_timer/rte_timer_version.map | 22 ++ 4 files changed, 723 insertions(+

[dpdk-dev] [PATCH v2 1/1] eventdev: add new software event timer adapter

2018-12-07 Thread Erik Gabriel Carrillo
performance, this version does away with the ring and lets lcores in both primary and secondary processes insert timers directly into timer skiplist data structures; the service core directly accesses the lists as well, when looking for timers that have expired. Signed-off-by: Erik Gabriel

[dpdk-dev] [PATCH v2 0/1] New software event timer adapter

2018-12-07 Thread Erik Gabriel Carrillo
patch to the timer library that is referenced below.) Depends on: https://patches.dpdk.org/project/dpdk/list/?series=2699 [1] https://doc.dpdk.org/guides/prog_guide/event_timer_adapter.html Changes in v2: - split this change out into its own patch series Erik Gabriel Carrillo (1): eventdev: add

[dpdk-dev] [PATCH v2 2/2] timer: add function to stop all timers in a list

2018-12-07 Thread Erik Gabriel Carrillo
Add a function to the timer API that allows a caller to traverse a specified set of timer lists, stopping each timer in each list, and invoking a callback function. Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/rte_timer.c | 39 ++ lib

[dpdk-dev] [PATCH v2 1/2] timer: allow timer management in shared memory

2018-12-07 Thread Erik Gabriel Carrillo
Erik Gabriel Carrillo --- lib/librte_timer/Makefile | 1 + lib/librte_timer/rte_timer.c | 519 ++--- lib/librte_timer/rte_timer.h | 226 +- lib/librte_timer/rte_timer_version.map | 22 ++ 4 files changed, 723 insertions(+

[dpdk-dev] [PATCH v2 0/2] Timer library changes

2018-12-07 Thread Erik Gabriel Carrillo
into their own series - version the symbols where the existing ABI was updated, and provide alternate implementation with behavior equivalent to original behavior. Validate ABI compatibility with validate-abi.sh - refactor changes to simplify patches Erik Gabriel Carrillo (2): tim

[dpdk-dev] [PATCH v3] app/eventdev: detect deadlock for timer event producer

2018-12-03 Thread Erik Gabriel Carrillo
a producer") Signed-off-by: Erik Gabriel Carrillo Acked-by: Jerin Jacob --- v3: - Forgot to add Jerin's ack line. v2: - Add a fixline to commit message (Jerin) app/test-eventdev/test_perf_common.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/test-eventdev/t

[dpdk-dev] [PATCH v2] app/eventdev: detect deadlock for timer event producer

2018-12-03 Thread Erik Gabriel Carrillo
a producer") Signed-off-by: Erik Gabriel Carrillo --- v2: - Add a fixline to commit message app/test-eventdev/test_perf_common.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/test-eventdev/test_perf_common.c b/app/test-eventdev/test_perf_common.c index 8618775.

[dpdk-dev] [PATCH 3/3] eventdev: add new software event timer adapter

2018-11-29 Thread Erik Gabriel Carrillo
lback function. The callback function is only called from the primary process, since that's where the service runs, and the callback is the same for all timers - it is defined to enqueue a timer expiry event in the event device. Signed-off-by: Erik Gabriel Carrillo --- lib/librt

[dpdk-dev] [PATCH 2/3] timer: add function to stop all timers in a list

2018-11-29 Thread Erik Gabriel Carrillo
Add a function to the timer API that allows a caller to traverse a specified set of timer lists, stopping each timer in each list, and invoking a callback function. Signed-off-by: Erik Gabriel Carrillo --- lib/librte_timer/rte_timer.c | 81 +++--- lib

[dpdk-dev] [PATCH 0/3] new software event timer adapter

2018-11-29 Thread Erik Gabriel Carrillo
/event_timer_adapter.html [2] https://doc.dpdk.org/guides/prog_guide/timer_lib.html Erik Gabriel Carrillo (3): timer: allow timer management in shared memory timer: add function to stop all timers in a list eventdev: add new software event timer adapter lib/librte_eventdev

[dpdk-dev] [PATCH 1/3] timer: allow timer management in shared memory

2018-11-29 Thread Erik Gabriel Carrillo
Erik Gabriel Carrillo --- lib/librte_timer/Makefile | 1 + lib/librte_timer/rte_timer.c | 526 +++-- lib/librte_timer/rte_timer.h | 168 ++- lib/librte_timer/rte_timer_version.map | 21 +- 4 files changed, 614 insertions(+)

[dpdk-dev] [PATCH] eventdev: remove redundant timer adapter function prototypes

2018-11-29 Thread Erik Gabriel Carrillo
Fixes: a6562f6d6f8e ("eventdev: introduce event timer adapter") Cc: sta...@dpdk.org Signed-off-by: Erik Gabriel Carrillo --- lib/librte_eventdev/rte_event_timer_adapter.h | 57 +-- 1 file changed, 2 insertions(+), 55 deletions(-) diff --git a/lib/librt

[dpdk-dev] [PATCH 1/1] app/eventdev: detect deadlock for timer event producer

2018-11-29 Thread Erik Gabriel Carrillo
If timer events get dropped for some reason, the thread that launched producer and worker cores will never exit, because the deadlock check doesn't currently apply to the event timer adapter case. This commit fixes this. Signed-off-by: Erik Gabriel Carrillo --- app/test-eve

[dpdk-dev] [PATCH 1/1] timer: fix race condition

2018-11-29 Thread Erik Gabriel Carrillo
ge() This commit fixes this race condition by only releasing the spinlock after the timer state has been transitioned from CONFIG to PENDING, which prevents rte_timer_manage() from seeing an incorrect state. Fixes: 9b15ba895b9f ("timer: use a skip list") Signed-off-by: Erik Gabrie

[dpdk-dev] [PATCH v2 1/1] service: Add service lcore attr APIs

2018-05-09 Thread Erik Gabriel Carrillo
"liveness" check to make sure a service core is not stuck. Signed-off-by: Erik Gabriel Carrillo Acked-by: Harry van Haaren --- v2: - Update doxygen comments to indicate that APIs are experimental - Move cover letter description of patch to commit message (Harry) lib/librte_eal/common/i

[dpdk-dev] [PATCH v2 1/1] test: fix build with GCC 4.8.5

2018-05-07 Thread Erik Gabriel Carrillo
sing-field-initializers to the test's CFLAGS to allow the current syntax if we are using GCC 5.0 or lower. Fixes: d1f3385d0076 ("test: add event timer adapter auto-test") Signed-off-by: Erik Gabriel Carrillo Acked-by: Jerin Jacob --- v2: - Add the 'Fixes' tag. (Jerin) test/

[dpdk-dev] [PATCH v1 1/1] test: fix build with GCC 4.8.5

2018-05-04 Thread Erik Gabriel Carrillo
sing-field-initializers to the test's CFLAGS to allow the current syntax if we are using GCC 5.0 or lower. Signed-off-by: Erik Gabriel Carrillo --- test/test/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/test/test/Makefile b/test/test/Makefile index 2630ab4..2011857 100644 --- a/tes

[dpdk-dev] [PATCH v1 0/1] Add service lcore attributes API

2018-05-04 Thread Erik Gabriel Carrillo
ction that invokes services mapped to a service core). This is useful to applications that desire a "liveness" check to make sure a service core is not stuck. Erik Gabriel Carrillo (1): service: Add service lcore attr APIs lib/librte_eal/common/include/rte_service.h | 30

[dpdk-dev] [PATCH v1 1/1] service: Add service lcore attr APIs

2018-05-04 Thread Erik Gabriel Carrillo
Add a counter that gets bumped each time the service runner loop goes around, and APIs to query and reset the attribute values. Signed-off-by: Erik Gabriel Carrillo --- lib/librte_eal/common/include/rte_service.h | 30 lib/librte_eal/common/rte_service.c | 43

[dpdk-dev] [PATCH v11 9/9] doc: add event timer adapter documentation

2018-04-04 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Acked-by: Jerin Jacob --- MAINTAINERS| 7 +++ doc/api/doxy-api-index.md | 32 +++- doc/guides/rel_notes/release_18_05.rst | 6 ++ 3 files changed, 16 insertions(+), 29 deletions

[dpdk-dev] [PATCH v11 3/9] eventtimer: add common code

2018-04-04 Thread Erik Gabriel Carrillo
This commit adds the logic that is shared by all event timer adapter drivers; the common code handles instance allocation and some initialization. Signed-off-by: Erik Gabriel Carrillo Acked-by: Pavan Nikhilesh --- config/common_base| 1 + drivers/event/sw

[dpdk-dev] [PATCH v11 8/9] doc: add event timer adapter section to programmer's guide

2018-04-04 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Signed-off-by: Jerin Jacob Signed-off-by: Pavan Nikhilesh Acked-by: Jerin Jacob --- doc/guides/prog_guide/event_timer_adapter.rst | 296 ++ doc/guides/prog_guide/index.rst | 1 + 2 files changed, 297 insertions

[dpdk-dev] [PATCH v11 4/9] mk: update library order in static build

2018-04-04 Thread Erik Gabriel Carrillo
The introduction of the event timer adapter library adds a dependency on the rte_timer library from the rte_eventdev library. Update the order so that the timer library comes after the eventdev library in the linker command when statically linking applications. Signed-off-by: Erik Gabriel

[dpdk-dev] [PATCH v11 7/9] test: add event timer adapter auto-test

2018-04-04 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Acked-by: Pavan Nikhilesh --- test/test/Makefile |1 + test/test/test_event_timer_adapter.c | 1830 ++ 2 files changed, 1831 insertions(+) create mode 100644 test/test/test_event_timer_adapter.c diff

[dpdk-dev] [PATCH v11 6/9] eventtimer: add support for meson build system

2018-04-04 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Acked-by: Pavan Nikhilesh --- config/rte_config.h | 1 + lib/librte_eventdev/meson.build | 9 ++--- lib/meson.build | 3 ++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/config/rte_config.h b/config

[dpdk-dev] [PATCH v11 5/9] eventtimer: add default software driver

2018-04-04 Thread Erik Gabriel Carrillo
If an eventdev PMD does not wish to provide event timer adapter ops definitions, the library will fall back to a default software implementation whose entry points are added by this commit. Signed-off-by: Erik Gabriel Carrillo Acked-by: Pavan Nikhilesh --- lib/Makefile

[dpdk-dev] [PATCH v11 2/9] eventdev: convert to SPDX license tag in header

2018-04-04 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Acked-by: Hemant Agrawal Acked-by: Jerin Jacob --- lib/librte_eventdev/rte_eventdev.h | 37 + 1 file changed, 5 insertions(+), 32 deletions(-) diff --git a/lib/librte_eventdev/rte_eventdev.h b/lib/librte_eventdev

[dpdk-dev] [PATCH v11 0/9] eventtimer: introduce event timer adapter

2018-04-04 Thread Erik Gabriel Carrillo
of pointer to struct rte_event_timer_adapter with ids - Removed rte_event_timer_adapter_lookup() function - Replaced RTE_EVENT_TIMER_SUCCESS_{ARM,CANCEL} states with RTE_EVENT_TIMER_ARMED Erik Gabriel Carrillo (9): eventtimer: introduce event timer adapter eventdev: convert to SPDX license tag

[dpdk-dev] [PATCH v11 1/9] eventtimer: introduce event timer adapter

2018-04-04 Thread Erik Gabriel Carrillo
represents a timer expiration, and it provides APIs with which adapters can be created or destroyed and event timers can be armed and canceled. Signed-off-by: Jerin Jacob Signed-off-by: Pavan Nikhilesh Signed-off-by: Erik Gabriel Carrillo Acked-by: Jerin Jacob --- lib/librte_eventdev/Makefile

[dpdk-dev] [PATCH v10 9/9] doc: add event timer adapter documentation

2018-04-03 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Acked-by: Jerin Jacob --- MAINTAINERS| 7 +++ doc/api/doxy-api-index.md | 32 +++- doc/guides/rel_notes/release_18_05.rst | 6 ++ 3 files changed, 16 insertions(+), 29 deletions

[dpdk-dev] [PATCH v10 8/9] doc: add event timer adapter section to programmer's guide

2018-04-03 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Signed-off-by: Jerin Jacob Signed-off-by: Pavan Nikhilesh Acked-by: Jerin Jacob --- doc/guides/prog_guide/event_timer_adapter.rst | 296 ++ doc/guides/prog_guide/index.rst | 1 + 2 files changed, 297 insertions

[dpdk-dev] [PATCH v10 7/9] test: add event timer adapter auto-test

2018-04-03 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Acked-by: Pavan Nikhilesh --- test/test/Makefile |1 + test/test/test_event_timer_adapter.c | 1831 ++ 2 files changed, 1832 insertions(+) create mode 100644 test/test/test_event_timer_adapter.c diff

[dpdk-dev] [PATCH v10 6/9] eventtimer: add support for meson build system

2018-04-03 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo --- config/rte_config.h | 1 + lib/librte_eventdev/meson.build | 9 ++--- lib/meson.build | 3 ++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/config/rte_config.h b/config/rte_config.h index 72c0aa2..117c19f

[dpdk-dev] [PATCH v10 5/9] eventtimer: add default software driver

2018-04-03 Thread Erik Gabriel Carrillo
If an eventdev PMD does not wish to provide event timer adapter ops definitions, the library will fall back to a default software implementation whose entry points are added by this commit. Signed-off-by: Erik Gabriel Carrillo Acked-by: Pavan Nikhilesh --- lib/Makefile

[dpdk-dev] [PATCH v10 3/9] eventtimer: add common code

2018-04-03 Thread Erik Gabriel Carrillo
This commit adds the logic that is shared by all event timer adapter drivers; the common code handles instance allocation and some initialization. Signed-off-by: Erik Gabriel Carrillo --- config/common_base| 1 + drivers/event/sw/sw_evdev.c

[dpdk-dev] [PATCH v10 4/9] mk: update library order in static build

2018-04-03 Thread Erik Gabriel Carrillo
The introduction of the event timer adapter library adds a dependency on the rte_timer library from the rte_eventdev library. Update the order so that the timer library comes after the eventdev library in the linker command when statically linking applications. Signed-off-by: Erik Gabriel

[dpdk-dev] [PATCH v10 1/9] eventtimer: introduce event timer adapter

2018-04-03 Thread Erik Gabriel Carrillo
represents a timer expiration, and it provides APIs with which adapters can be created or destroyed and event timers can be armed and canceled. Signed-off-by: Jerin Jacob Signed-off-by: Pavan Nikhilesh Signed-off-by: Erik Gabriel Carrillo Acked-by: Jerin Jacob --- lib/librte_eventdev/Makefile

[dpdk-dev] [PATCH v10 2/9] eventdev: convert to SPDX license tag in header

2018-04-03 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Acked-by: Hemant Agrawal Acked-by: Jerin Jacob --- lib/librte_eventdev/rte_eventdev.h | 37 + 1 file changed, 5 insertions(+), 32 deletions(-) diff --git a/lib/librte_eventdev/rte_eventdev.h b/lib/librte_eventdev

[dpdk-dev] [PATCH v10 0/9] eventtimer: introduce event timer adapter

2018-04-03 Thread Erik Gabriel Carrillo
ved rte_event_timer_adapter_lookup() function - Replaced RTE_EVENT_TIMER_SUCCESS_{ARM,CANCEL} states with RTE_EVENT_TIMER_ARMED Erik Gabriel Carrillo (9): eventtimer: introduce event timer adapter eventdev: convert to SPDX license tag in header eventtimer: add common code mk: update li

[dpdk-dev] [PATCH v9 9/9] doc: add event timer adapter documentation

2018-04-02 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo --- MAINTAINERS| 7 +++ doc/api/doxy-api-index.md | 32 +++- doc/guides/rel_notes/release_18_05.rst | 6 ++ 3 files changed, 16 insertions(+), 29 deletions(-) diff --git a

[dpdk-dev] [PATCH v9 7/9] test: add event timer adapter auto-test

2018-04-02 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo --- test/test/Makefile |1 + test/test/test_event_timer_adapter.c | 1831 ++ 2 files changed, 1832 insertions(+) create mode 100644 test/test/test_event_timer_adapter.c diff --git a/test/test/Makefile b

[dpdk-dev] [PATCH v9 8/9] doc: add event timer adapter section to programmer's guide

2018-04-02 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo Signed-off-by: Jerin Jacob Signed-off-by: Pavan Nikhilesh --- doc/guides/prog_guide/event_timer_adapter.rst | 297 ++ doc/guides/prog_guide/index.rst | 1 + 2 files changed, 298 insertions(+) create mode 100644 doc

[dpdk-dev] [PATCH v9 6/9] eventtimer: add support for meson build system

2018-04-02 Thread Erik Gabriel Carrillo
Signed-off-by: Erik Gabriel Carrillo --- config/rte_config.h | 1 + lib/librte_eventdev/meson.build | 9 ++--- lib/meson.build | 3 ++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/config/rte_config.h b/config/rte_config.h index 72c0aa2..117c19f

[dpdk-dev] [PATCH v9 4/9] mk: update library order in static build

2018-04-02 Thread Erik Gabriel Carrillo
The introduction of the event timer adapter library adds a dependency on the rte_timer library from the rte_eventdev library. Update the order so that the timer library comes after the eventdev library in the linker command when statically linking applications. Signed-off-by: Erik Gabriel

[dpdk-dev] [PATCH v9 3/9] eventtimer: add common code

2018-04-02 Thread Erik Gabriel Carrillo
This commit adds the logic that is shared by all event timer adapter drivers; the common code handles instance allocation and some initialization. Signed-off-by: Erik Gabriel Carrillo --- config/common_base| 1 + drivers/event/sw/sw_evdev.c

[dpdk-dev] [PATCH v9 1/9] eventtimer: introduce event timer adapter

2018-04-02 Thread Erik Gabriel Carrillo
represents a timer expiration, and it provides APIs with which adapters can be created or destroyed and event timers can be armed and canceled. Signed-off-by: Jerin Jacob Signed-off-by: Pavan Nikhilesh Signed-off-by: Erik Gabriel Carrillo --- lib/librte_eventdev/Makefile | 1

  1   2   >