From: Alexander Graf <agraf@suse.de>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Paul Mackerras <paulus@samba.org>, Gleb Natapov <gleb@redhat.com>,
Michael Ellerman <michael@ellerman.id.au>,
linux-kernel@vger.kernel.org, mpm@selenic.com,
herbert@gondor.hengli.com.au, linuxppc-dev@ozlabs.org,
kvm@vger.kernel.org, kvm-ppc@vger.kernel.org, tytso@mit.edu
Subject: Re: [PATCH 3/3] KVM: PPC: Book3S: Add support for hwrng found on some powernv systems
Date: Wed, 02 Oct 2013 09:11:06 +0000 [thread overview]
Message-ID: <668E4650-BC22-4CBF-A282-E7875DF29DB6@suse.de> (raw)
In-Reply-To: <1380704789.645.57.camel@pasglop>
On 02.10.2013, at 11:06, Benjamin Herrenschmidt wrote:
> On Wed, 2013-10-02 at 10:46 +0200, Paolo Bonzini wrote:
>
>>
>> Thanks. Any chance you can give some numbers of a kernel hypercall and
>> a userspace hypercall on Power, so we have actual data? For example a
>> hypercall that returns H_PARAMETER as soon as possible.
>
> I don't have (yet) numbers at hand but we have basically 3 places where
> we can handle hypercalls:
>
> - 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.
> This is the fastest path since we don't take out the other threads nor
> perform any expensive context change. This is where we put the
> "accelerated" H_RANDOM as well.
>
> - 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
> there, page faults, etc...
>
> - Qemu. This adds the round trip to userspace on top of the above.
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.
So the additional overhead when handling it in QEMU here really boils down to the user space roundtrip (plus another random number read roundtrip).
Alex
next prev parent reply other threads:[~2013-10-02 9:11 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-26 6:31 [PATCH 1/3] powerpc: Implement arch_get_random_long/int() for powernv Michael Ellerman
2013-09-26 6:31 ` [PATCH 2/3] hwrng: Add a driver for the hwrng found in power7+ systems Michael Ellerman
2013-09-26 8:01 ` Benjamin Herrenschmidt
2013-10-01 8:25 ` Michael Ellerman
2013-09-26 6:31 ` [PATCH 3/3] KVM: PPC: Book3S: Add support for hwrng found on some powernv systems Michael Ellerman
2013-09-26 9:06 ` Paolo Bonzini
2013-10-01 8:34 ` Michael Ellerman
2013-10-01 8:39 ` Gleb Natapov
2013-10-01 9:23 ` Paul Mackerras
2013-10-01 9:57 ` Gleb Natapov
2013-10-01 10:00 ` Alexander Graf
2013-10-01 9:38 ` Benjamin Herrenschmidt
2013-10-01 11:19 ` Paolo Bonzini
2013-10-01 21:44 ` Benjamin Herrenschmidt
2013-10-02 8:38 ` Paolo Bonzini
2013-10-02 5:09 ` Paul Mackerras
2013-10-02 8:46 ` Paolo Bonzini
2013-10-02 9:06 ` Benjamin Herrenschmidt
2013-10-02 9:11 ` Alexander Graf [this message]
2013-10-02 9:50 ` Alexander Graf
2013-10-02 10:02 ` Gleb Natapov
2013-10-02 13:57 ` Michael Ellerman
2013-10-02 14:08 ` Alexander Graf
2013-10-02 14:33 ` Paolo Bonzini
2013-10-02 14:36 ` Alexander Graf
2013-10-02 14:38 ` Paolo Bonzini
2013-10-02 22:45 ` Paul Mackerras
2013-10-03 5:48 ` Gleb Natapov
2013-10-03 10:06 ` Paul Mackerras
2013-10-03 12:08 ` Gleb Natapov
2013-10-02 14:37 ` Gleb Natapov
2013-10-02 22:21 ` Benjamin Herrenschmidt
2013-10-03 6:08 ` Gleb Natapov
2013-10-02 22:13 ` Benjamin Herrenschmidt
2013-10-02 14:10 ` Gleb Natapov
2013-10-02 22:15 ` Benjamin Herrenschmidt
2013-10-02 22:02 ` Benjamin Herrenschmidt
2013-10-03 5:43 ` Gleb Natapov
2013-10-03 7:22 ` Benjamin Herrenschmidt
2013-10-02 22:07 ` Benjamin Herrenschmidt
2013-10-03 6:28 ` Gleb Natapov
2013-10-02 21:58 ` Benjamin Herrenschmidt
2013-10-01 9:58 ` Paolo Bonzini
2013-09-27 14:27 ` Anshuman Khandual
2013-10-01 8:36 ` Michael Ellerman
2013-09-26 7:58 ` [PATCH 1/3] powerpc: Implement arch_get_random_long/int() for powernv Benjamin Herrenschmidt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=668E4650-BC22-4CBF-A282-E7875DF29DB6@suse.de \
--to=agraf@suse.de \
--cc=benh@kernel.crashing.org \
--cc=gleb@redhat.com \
--cc=herbert@gondor.hengli.com.au \
--cc=kvm-ppc@vger.kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=michael@ellerman.id.au \
--cc=mpm@selenic.com \
--cc=paulus@samba.org \
--cc=pbonzini@redhat.com \
--cc=tytso@mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox