Re: [dpdk-dev] [PATCH v3] pflock: implementation of phase-fair reader writer locks
From: Stephen Hemminger <stephen@networkplumber.org>
Date: 2021-03-26 17:18:06
From: Stephen Hemminger <stephen@networkplumber.org>
Date: 2021-03-26 17:18:06
On Wed, 3 Mar 2021 11:19:45 -0800 Stephen Hemminger [off-list ref] wrote:
This is a new type of reader-writer lock that provides better fairness
guarantees which makes it better for typical DPDK applications.
They lock internally uses two ticket pools, one for readers and one
for writers.
Phase fair reader writer locks ensure that neither reader or writer will be
starved. Neither reader or writer are preferred, they execute in
alternating phases. All operations of the same time (reader or writer)
that try to acquire the lock are handled in FIFO order. Write
operations are exclusive, and multiple read operations can be run
together (until a write arrives).
A similar implementation is in Concurrency Kit package in FreeBSD.
For more information see:
"Reader-Writer Synchronization for Shared-Memory Multiprocessor
Real-Time Systems",
http://www.cs.unc.edu/~anderson/papers/ecrts09b.pdf
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>Why has there been no review of this patch? The only complaint in patchwork is a bogus checkpatch warning about possible spelling error.