Messages in this thread | | | Date | Thu, 17 Apr 2014 17:33:06 -0400 | From | Waiman Long <> | Subject | Re: [PATCH v9 05/19] qspinlock: Optimize for smaller NR_CPUS |
| |
On 04/17/2014 11:51 AM, Peter Zijlstra wrote: > On Thu, Apr 17, 2014 at 11:03:57AM -0400, Waiman Long wrote: >> @@ -48,6 +53,9 @@ >> * We can further change the first spinner to spin on a bit in the lock word >> * instead of its node; whereby avoiding the need to carry a node from lock to >> * unlock, and preserving API. >> + * >> + * N.B. The current implementation only supports architectures that allow >> + * atomic operations on smaller 8-bit and 16-bit data types. >> */ > Only for the _Q_PENDING_BITS == 8 case, the other case should still be > fine.
Yes, but _Q_PENDING_BITS is controlled by NR_CPUS which, for almost all the distributions, is less than 16K which means _Q_PENDING_BITS will always be set to 8, especially for non-x86 architectures.
-Longman
| |