aboutsummaryrefslogtreecommitdiff
path: root/arch/powerpc/include/asm/checksum.h
diff options
context:
space:
mode:
authorMarcelo Tosatti <mtosatti@redhat.com>2015-04-08 20:33:24 -0300
committerAnders Roxell <anders.roxell@linaro.org>2015-08-17 08:59:43 +0200
commite64e9fa132c60709e6f75da4279adebe59d3f66b (patch)
tree0e9313162dbd65bea8b32f452a46c0fe16c8eb7e /arch/powerpc/include/asm/checksum.h
parentae86169aa58855dc944b1e1a21bd7f12bbbf90f9 (diff)
KVM: use simple waitqueue for vcpu->wq
The problem: On -RT, an emulated LAPIC timer instances has the following path: 1) hard interrupt 2) ksoftirqd is scheduled 3) ksoftirqd wakes up vcpu thread 4) vcpu thread is scheduled This extra context switch introduces unnecessary latency in the LAPIC path for a KVM guest. The solution: Allow waking up vcpu thread from hardirq context, thus avoiding the need for ksoftirqd to be scheduled. Normal waitqueues make use of spinlocks, which on -RT are sleepable locks. Therefore, waking up a waitqueue waiter involves locking a sleeping lock, which is not allowed from hard interrupt context. cyclictest command line: # cyclictest -m -n -q -p99 -l 1000000 -h60 -D 1m This patch reduces the average latency in my tests from 14us to 11us. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Diffstat (limited to 'arch/powerpc/include/asm/checksum.h')
0 files changed, 0 insertions, 0 deletions