History log of /system/chre/core/include/chre/core/timer_pool.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
67b068e2f6188155c2c13e6f88829530108c549d 09-May-2017 Arthur Ishiguro <arthuri@google.com> Limits number of total timer requests

Places a limit on the total number of timer requests for all nanoapps.
Done to make sure that timer_pool does not eat up heap space in cases
where many timers are created.

Test: run_sim.sh, run_tests.sh
Change-Id: Ie83b086219a7582aaa36e14978425f48e2d2d7b0
/system/chre/core/include/chre/core/timer_pool.h
d89e160c721647f5347526c93e40ac500af3a1e1 02-May-2017 Arthur Ishiguro <arthuri@google.com> Fix handling of timer allocations failures

Modifies setTimer to return CHRE_TIMER_INVALID if memory allocation for
a new timer fails. For failures in re-inserting recurring timers, we do
a CHRE_ASSERT.

Test: run_sim.sh, run_test.sh
Change-Id: Icefb9a20fb09b462e0fa9501c681e827a9b65f15
/system/chre/core/include/chre/core/timer_pool.h
9cfff1a3bd75f9b78aaf2a8c3277ca97c12fa95c 29-Mar-2017 Andrew Rossignol <aarossig@google.com> Fixes a memory corruption bug in TimerPool

- Updates the cyclic timer refresh logic to make a copy of the current
timer request rather than using a reference. The reference causes a
crash if a resize is required.
- Updates TimerPool to use instance ID as a first-class citizen over
pointers to improve robustness due to the async nature of timers

Test: Run on device, wwan requests are now cyclic
Change-Id: I86a8dc539700fc0dbd94709cef776182fe4f6294
/system/chre/core/include/chre/core/timer_pool.h
08413f5dd587595f95ce23cd930f57f92f0fd3b2 07-Jan-2017 Andrew Rossignol <aarossig@google.com> Marks the TimerPool as NonCopyable

Change-Id: I537d94829cbfd6894056d9d8df1f2cf3ed5ab3bf
/system/chre/core/include/chre/core/timer_pool.h
5719f6ca9ed320c2001ac16b23133265efb97dbd 06-Jan-2017 Andrew Rossignol <aarossig@google.com> Replaces the DynamicVector of TimerRequests with a PriorityQueue

Change-Id: I958d6beedf8dc5bedc67eb4f30daa2716d77838e
/system/chre/core/include/chre/core/timer_pool.h
6851c47f6eecf75c66f7df0b1331b0e392201e14 13-Dec-2016 Andrew Rossignol <aarossig@google.com> Implements chreTimerCancel using the TimerPool

Change-Id: I05255da65b1ba737baebcff174ea77792ae2eba3
/system/chre/core/include/chre/core/timer_pool.h
725bef45ca127971b3ea798cd1f4e4b2c0d8fe9d 10-Dec-2016 Andrew Rossignol <aarossig@google.com> Implements portions of the SystemTimer.

- Supports requesting a timer and delivering events.
- TimerHandle generation logic.
- Multiplexes multiple requests into one underlying timer.
- Adds a TimerWorld sample app to test cyclic and one-shot timers.

Change-Id: Id992790b49618f94ab2a7ce76098394e5cc161d4
/system/chre/core/include/chre/core/timer_pool.h
fbb213b072fec0a14f437ad55685c4d95eec829e 10-Dec-2016 Andrew Rossignol <aarossig@google.com> Starts building the TimerPool

- Renames Timer to TimerPool

Change-Id: Icef2fc8b791a9fb60111c44a690b3e9c51390c79
/system/chre/core/include/chre/core/timer_pool.h