Branch: refs/heads/api-next Home: https://github.com/Linaro/odp Commit: e8ec57b012fea43ae501adb66f5c8ee2f03d0a6c https://github.com/Linaro/odp/commit/e8ec57b012fea43ae501adb66f5c8ee2f03d0a6c Author: Petri Savolainen <petri.savolai...@linaro.org> Date: 2018-01-16 (Tue, 16 Jan 2018)
Changed paths: M include/odp/api/spec/queue.h M platform/linux-generic/odp_queue.c M platform/linux-generic/odp_queue_scalable.c M test/validation/api/queue/queue.c Log Message: ----------- api: queue: block-free capabilities Lock-free and wait-free implementations may differ a lot from the default (blocking) implementation. Thus the maximum number of queues and queue sizes may be more limited. Non-blocking enum is not needed anymore as capability, since number of queues may be zero for LF/WF when not implemented. Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org> Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org> Commit: 6a2d72b399388d7d29cba4f60bf3aea3f1ff555c https://github.com/Linaro/odp/commit/6a2d72b399388d7d29cba4f60bf3aea3f1ff555c Author: Petri Savolainen <petri.savolai...@linaro.org> Date: 2018-01-16 (Tue, 16 Jan 2018) Changed paths: M test/validation/api/queue/queue.c M test/validation/api/queue/queue.h Log Message: ----------- validation: queue: test lock-free queue Added simple, single threaded enqueue/dequeue test for lock-free queues. Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org> Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org> Commit: 614773850d4d572b793ce2db6cb0cd6c94dada3b https://github.com/Linaro/odp/commit/614773850d4d572b793ce2db6cb0cd6c94dada3b Author: Petri Savolainen <petri.savolai...@linaro.org> Date: 2018-01-16 (Tue, 16 Jan 2018) Changed paths: M test/validation/api/queue/queue.c Log Message: ----------- validation: queue: multi-thread plain queue test Test plain queue enqueue and dequeue with multiple concurrent threads. Test blocking and non-blocking lock-free implementations. Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org> Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org> Commit: 0c7741d067d9b96e14e420b53a256a1b93096e16 https://github.com/Linaro/odp/commit/0c7741d067d9b96e14e420b53a256a1b93096e16 Author: Petri Savolainen <petri.savolai...@linaro.org> Date: 2018-01-16 (Tue, 16 Jan 2018) Changed paths: M platform/linux-generic/Makefile.am M platform/linux-generic/include/odp_queue_internal.h A platform/linux-generic/include/odp_queue_lf.h M platform/linux-generic/odp_queue.c A platform/linux-generic/odp_queue_lf.c Log Message: ----------- linux-gen: queue: lock-free implementation Simple implementation of non-blocking, lock-free plain queues. Enqueues are done freely to any free ring node with an atomically increasing counter value. Dequeue operation finds the node with lowest counter value. Implementation requires lockfree 128 bit atomics. Lock-free queues are not supported when those are not available. Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org> Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org> Compare: https://github.com/Linaro/odp/compare/f6dab2bfa90e...0c7741d067d9