Messages in this thread | | | Date | Wed, 30 Jun 2010 16:42:18 +0200 | From | Jeremy Fitzhardinge <> | Subject | Re: [PATCH 2/4, v2] x86: enlightenment for ticket spin locks - Xen implementation |
| |
On 06/30/2010 04:36 PM, Jan Beulich wrote: > Are we perhaps talking about different things? I'm referring to > > static __always_inline void arch_spin_unlock(struct arch_spinlock *lock) > { > PVOP_VCALL1(pv_lock_ops.spin_unlock, lock); > } > > which is an indirect call which, as I understand it, gets replaced > with a direct one at runtime. But it remains to be a call (as opposed > to being a single inc instructions without CONFIG_PARAVIRT_SPINLOCKS). >
Sorry, I'm referring to pv ticketlocks, not the current PARAVIRT_SPINLOCKS code. I agree the current PARAVIRT_SPINLOCKS implementation is suboptimal and needs to be replaced with something that's only called on the slow path. I just think the existing paravirt_ops mechanism can be used to implement it rather than adding something new.
J
| |