[v3,0/2] ticketlock: implement ticketlock and add test case

Message ID 1548405441-60286-1-git-send-email-joyce.kong@arm.com
Headers show
Series
  • ticketlock: implement ticketlock and add test case
Related show

Message

Joyce Kong Jan. 25, 2019, 8:37 a.m.
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):
  ticketlock: ticket based to improve fairness
  test/ticketlock: add ticket lock test case

 MAINTAINERS                                        |   5 +
 doc/api/doxy-api-index.md                          |   1 +
 lib/librte_eal/common/Makefile                     |   2 +-
 .../common/include/generic/rte_ticketlock.h        | 201 +++++++++++++
 lib/librte_eal/common/meson.build                  |   1 +
 test/test/Makefile                                 |   1 +
 test/test/autotest_data.py                         |   6 +
 test/test/meson.build                              |   1 +
 test/test/test_ticketlock.c                        | 311 +++++++++++++++++++++
 9 files changed, 528 insertions(+), 1 deletion(-)
 create mode 100644 lib/librte_eal/common/include/generic/rte_ticketlock.h
 create mode 100644 test/test/test_ticketlock.c