Thread (11 messages) 11 messages, 3 authors, 2020-07-15

Re: [PATCH 2/2] locking/pvqspinlock: Optionally store lock holder cpu into lock

From: Waiman Long <longman@redhat.com>
Date: 2020-07-15 16:33:38
Also in: lkml

On 7/14/20 5:01 AM, Peter Zijlstra wrote:
On Mon, Jul 13, 2020 at 10:48:00PM -0400, Waiman Long wrote:
quoted
Storing the cpu number into the lock can be useful for other reason too. It
is not totally related to PPC support.
Well, the thing you did only works for 'small' (<253 CPU) systems.
There's a number of Power systems that's distinctly larger than that. So
it simply cannot work as anything other than a suggestion/hint. It must
not be a correctness thing.
Yes, there are limit on how much data one can put into the lock byte. So 
it is not a sure way to find out who the lock holder is. There are 
certainly large systems with hundreds or even thousands of cpus, but 
they are the minority in the sea of Linux systems out there.

If the lock holder goes through the slowpath, the one behind it can save 
its cpu number which can be used a hint of who the lock holder is though 
it is not that reliable as lock stealing can happen.

BTW, I did get the optimized PV unlock asm code working now. I will post 
the updated unconditional patch later this week for further discussion.

Cheers,
Longman
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help