On 10/16/24 2:05 PM, Matthew Wilcox
wrote:
On Wed, Oct 16, 2024 at 10:23:14AM -0400, Waiman Long wrote:Another alternative that I have been thinking about is a down_read() variant with intention to upgrade later. This will ensure that only one active reader is allowed to upgrade later. With this, upgrade_read() will always succeed, maybe with some sleeping, as long as the correct down_read() is used.How is that different from Kent's SIX locks other than you can take an rwsem for write immediately (SIX locks have to be taken for Intent and then Upgraded)?
Yes, it is modeled after Kent's SIX locks. The goal is to eventually eliminate the need of a separate SIX lock.
Cheers,
Longman