v5: Change the variants inside rte_ticket_lock from unint to uint16_t for binary compatibility with the plain spin lock.
v4: Change some assignment operation in recursive ticket lock to __atomic. V3: 1.Update ticketlock intrduction(suggested by Honnappa Nagarahalli). 2.Change the implementation of rte_ticketlock_trylock to CAS(suggested by Honnappa Nagarahalli). V2: 1.Update commit message(suggested by Jerin Jacob). 2.Add ticketlock test cases(suggested by Jerin Jacob). V1: Implement ticket lock to improve lock fairness and prdictability. As shown on thundex-2 platform: *** ticketlock_autotest with this patch *** Core [0] count = 496 Core [1] count = 495 Core [2] count = 498 ... Core [209] count = 488 Core [210] count = 490 Core [211] count = 474 Joyce Kong (2): eal/ticketlock: ticket based to improve fairness test/ticketlock: add ticket lock test case MAINTAINERS | 4 + app/test/Makefile | 1 + app/test/autotest_data.py | 6 + app/test/meson.build | 1 + app/test/test_ticketlock.c | 311 +++++++++++++++++++++ doc/api/doxy-api-index.md | 1 + lib/librte_eal/common/Makefile | 2 +- .../common/include/generic/rte_ticketlock.h | 203 ++++++++++++++ lib/librte_eal/common/meson.build | 1 + 9 files changed, 529 insertions(+), 1 deletion(-) create mode 100644 app/test/test_ticketlock.c create mode 100644 lib/librte_eal/common/include/generic/rte_ticketlock.h -- 2.7.4