Thread (46 messages) 46 messages, 8 authors, 2013-10-03

Re: [PATCH 3/3] KVM: PPC: Book3S: Add support for hwrng found on some powernv systems

From: Alexander Graf <hidden>
Date: 2013-10-02 09:50:57
Also in: kvm, lkml

On 02.10.2013, at 11:11, Alexander Graf wrote:
=20
On 02.10.2013, at 11:06, Benjamin Herrenschmidt wrote:
=20
quoted
On Wed, 2013-10-02 at 10:46 +0200, Paolo Bonzini wrote:
=20
quoted
=20
Thanks.  Any chance you can give some numbers of a kernel hypercall =
and
quoted
quoted
a userspace hypercall on Power, so we have actual data?  For example =
a
quoted
quoted
hypercall that returns H_PARAMETER as soon as possible.
=20
I don't have (yet) numbers at hand but we have basically 3 places =
where
quoted
we can handle hypercalls:
=20
- Kernel real mode. This is where most of our MMU stuff goes for
example unless it needs to trigger a page fault in Linux. This is
executed with translation disabled and the MMU still in guest =
context.
quoted
This is the fastest path since we don't take out the other threads =
nor
quoted
perform any expensive context change. This is where we put the
"accelerated" H_RANDOM as well.
=20
- Kernel virtual mode. That's a full exit, so all threads are out and
MMU switched back to host Linux. Things like vhost MMIO emulation =
goes
quoted
there, page faults, etc...
=20
- Qemu. This adds the round trip to userspace on top of the above.
=20
Right, and the difference for the patch in question is really whether =
we handle in in kernel virtual mode or in QEMU, so the bulk of the =
overhead (kicking threads out of  guest context, switching MMU context, =
etc) happens either way.
=20
So the additional overhead when handling it in QEMU here really boils =
down to the user space roundtrip (plus another random number read =
roundtrip).

Ah, sorry, I misread the patch. You're running the handler in real mode =
of course :).

So how do you solve live migration between a kernel that has this patch =
and one that doesn't?


Alex
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help