HomeFreeBSD

sx: port over writer starvation prevention measures from rwlock

Description

sx: port over writer starvation prevention measures from rwlock

A constant stream of readers could completely starve writers and this is not
a hypothetical scenario.

The 'poll2_threads' test from the will-it-scale suite reliably starves writers
even with concurrency < 10 threads.

The problem was run into and diagnosed by dillon@backplane.com

There was next to no change in lock contention profile during -j 128 pkg build,
despite an sx lock being at the top.

Tested by: pho

Details

Provenance
mjgAuthored on
Parents
rS334023: rw: decrease writer starvation
Branches
Unknown
Tags
Unknown