lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Tue, 16 Sep 2014 15:01:07 -0700
From:	Jason Low <>
To:	Peter Hurley <>
Cc:	Peter Zijlstra <>,
	Ingo Molnar <>,
	Tim Chen <>,
	Davidlohr Bueso <>,,
	Aswin Chandramouleeswaran <>,
	Chegu Vinod <>,
Subject: Re: [PATCH v2] locking/rwsem: Avoid double checking before try
 acquiring write lock

On Tue, 2014-09-16 at 16:08 -0400, Peter Hurley wrote:
> Hi Jason,
> On 09/16/2014 03:01 PM, Jason Low wrote:
> > Commit 9b0fc9c09f1b checks for if there are known active lockers in
> > order to avoid write trylocking using expensive cmpxchg() when it
> > likely wouldn't get the lock.
> > 
> > However, a subsequent patch was added such that we directly check for
> > sem->count == RWSEM_WAITING_BIAS right before trying that cmpxchg().
> > Thus, commit 9b0fc9c09f1b now just adds extra overhead. This patch
> > deletes it.
> It would be better to just not reload sem->count, and check the parameter
> count == RWSEM_WAITING_BIAS instead. The count parameter is a very recent
> load of sem->count (one of which is the latest exclusive read from an
> atomic operation), so likely to be just as accurate as a reload of
> sem->count without causing more cache line contention.

Hi Peter and Tim,

Yes, I also agree. I will send out a new patch with this update.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

Powered by blists - more mailing lists