|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 05/11] qspinlock: Optimize for smaller NR_CPUS
Il 07/07/2014 16:35, Peter Zijlstra ha scritto: On Wed, Jun 18, 2014 at 01:39:52PM +0200, Paolo Bonzini wrote:Il 15/06/2014 14:47, Peter Zijlstra ha scritto:
This code is added in patch 3:
+ /*
+ * take ownership and clear the pending bit.
+ *
+ * *,1,0 -> *,0,1
+ */
+ for (;;) {
+ new = (val & ~_Q_PENDING_MASK) | _Q_LOCKED_VAL;
+
+ old = atomic_cmpxchg(&lock->val, val, new);
+ if (old == val)
+ break;
+
+ val = old;
+ }
+ return;
Unlike the change in patch 4, clear_pending_set_locked doesn't change
how qspinlock moves from a state to the next.
Paolo _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |