HomeFreeBSD

MFC r313392,r313784:

Description

MFC r313392,r313784:

rwlock: implement RW_LOCK_WRITER_RECURSED bit

This moves recursion handling out of the inlined wunlock path and in
particular saves a read and a branch.

rwlock: tidy up r313392

While a new bit was added and thread alignment got shifted to accomodate it,
RW_READERS_SHIFT was not modified accordingly and clashed with the new flag.

This was surprisingly harmless. If the lock was taken for writing, other flags
were tested. If the lock was taken for reading, it would correctly work for
readers > 1 and this was the only relevant test performed.

Details

Provenance
mjgAuthored on
Parents
rS315378: MFC r313275,r313280,r313282,r313335:
Branches
Unknown
Tags
Unknown