Messages in this thread | | | Subject | Re: [Xen-devel] Performance overhead of paravirt_ops on nativeidentified | From | Peter Zijlstra <> | Date | Thu, 14 May 2009 10:33:59 +0200 |
| |
On Thu, 2009-05-14 at 09:05 +0100, Jan Beulich wrote: > Wouldn't a third solution be to use ticket spinlocks everywhere, i.e. eliminate > the current indirection, and replace it by an indirection for just the contention > case? As I view it, the problem for Xen aren't really the ticket locks by > themselves, but rather the extra spinning involved, which is of concern only > if a lock is contended. We're using ticket locks quite happily in our kernels, > with directed instead of global wakeup from the unlock path. The only open > issue we currently have is that while for native keeping interrupts disabled > while spinning may be acceptable (though I'm not sure how -rt folks are > viewing this), in a pv environment one should really re-enable interrupts > here due to the potentially much higher latency.
the -rt folks don't nearly have as many spinlocks, and for those we do like ticket locks, because they are much fairer and give better worst case contention behaviour.
Also, for the -rt folks, preempt disable is about as bad as irq disable.
| |