Messages in this thread | | | Date | Wed, 11 Jul 2012 17:34:47 +0530 | From | Raghavendra K T <> | Subject | Re: [PATCH RFC 0/2] kvm: Improving directed yield in PLE handler |
| |
On 07/11/2012 05:25 PM, Christian Borntraeger wrote: > On 11/07/12 13:51, Raghavendra K T wrote: >>>>> Almost all s390 kernels use diag9c (directed yield to a given guest cpu) for spinlocks, though. >>>> >>>> Perhaps x86 should copy this. >>> >>> See arch/s390/lib/spinlock.c >>> The basic idea is using several heuristics: >>> - loop for a given amount of loops >>> - check if the lock holder is currently scheduled by the hypervisor >>> (smp_vcpu_scheduled, which uses the sigp sense running instruction) >>> Dont know if such thing is available for x86. It must be a lot cheaper >>> than a guest exit to be useful >> >> Unfortunately we do not have information on lock-holder. > > That would be an independent patch and requires guest changes. >
Yes, AFAI think, there are two options: (1) extend lock and use spare bit in ticketlock indicate lock is held (2) use percpu list entry.
| |