[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <779FC7D4-67CE-4D22-8154-FC108479935F@oracle.com>
Date: Wed, 17 Jul 2019 10:42:26 -0400
From: Alex Kogan <alex.kogan@...cle.com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: Waiman Long <longman@...hat.com>, linux@...linux.org.uk,
mingo@...hat.com, will.deacon@....com, arnd@...db.de,
linux-arch@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, tglx@...utronix.de, bp@...en8.de,
hpa@...or.com, x86@...nel.org, guohanjun@...wei.com,
jglauber@...vell.com, steven.sistare@...cle.com,
daniel.m.jordan@...cle.com, dave.dice@...cle.com,
rahul.x.yadav@...cle.com
Subject: Re: [PATCH v3 3/5] locking/qspinlock: Introduce CNA into the slow
path of qspinlock
>> * mcs_node
>> * +--------+ +----+ +----+
>> * | next | ---> |next| -> ... |next| -> NULL [Main queue]
>> * | locked | -+ +----+ +----+
>> * +--------+ |
>> * | +---------+ +----+
>> * +-> |mcs::next| -> ... |next| -> NULL [Secondary queue]
>> * |cna::tail| -+ +----+
>> * +---------+ | ^
>> * +--------+
>> *
>> * N.B. locked = 1 if secondary queue is absent.
>> */
I would change mcs_node to cna_node, next to mcs::next and locked to mcs::locked
in the very first node. Other than that, this is great. Thanks, Peter and Longman!
I should probably stick this graphic in the comment at the top of the file,
instead of a comment to find_successor() (or whatever this function ends up
being called).
— Alex
Powered by blists - more mailing lists