KVM: s390: use hrtimer for clock wakeup from idle - v2
authorChristian Borntraeger <borntraeger@de.ibm.com>
Tue, 12 May 2009 15:21:49 +0000 (17:21 +0200)
committerAvi Kivity <avi@redhat.com>
Wed, 10 Jun 2009 08:48:55 +0000 (11:48 +0300)
commitca8723023f25c9a70d76cbd6101f8fb4ffec2fa0
treeef753d244a55271279b5b2cf29b28db5b35b454c
parent2668dab794272f0898491acaf1e77e9a005abc0f
KVM: s390: use hrtimer for clock wakeup from idle - v2

This patch reworks the s390 clock comparator wakeup to hrtimer. The clock
comparator is a per-cpu value that is compared against the TOD clock. If
ckc <= TOD an external interrupt 1004 is triggered. Since the clock comparator
and the TOD clock have a much higher resolution than jiffies we should use
hrtimers to trigger the wakeup. This speeds up guest nanosleep for small
values.

Since hrtimers callbacks run in hard-irq context, I added a tasklet to do
the actual work with enabled interrupts.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Christian Ehrhardt <ehrhardt@de.ibm.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/s390/include/asm/kvm_host.h
arch/s390/kvm/interrupt.c
arch/s390/kvm/kvm-s390.c
arch/s390/kvm/kvm-s390.h