From: marc.zyngier@arm.com (Marc Zyngier)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/3] KVM: ARM: Add support for Cortex-A7
Date: Mon, 07 Oct 2013 10:29:00 +0100 [thread overview]
Message-ID: <52527EDC.4030605@arm.com> (raw)
In-Reply-To: <CA+eFSM2KieXziRFE3s143Huj-bY++fmt__fRSa4JO_=m9B8sNg@mail.gmail.com>
On 07/10/13 10:17, Gavin Guo wrote:
> On Mon, Oct 7, 2013 at 4:07 PM, Marc Zyngier <marc.zyngier@arm.com> wrote:
>>
>> On 07/10/13 07:16, Gavin Guo wrote:
>>> On Sun, Oct 6, 2013 at 10:56 PM, Peter Maydell <peter.maydell@linaro.org
>>> <mailto:peter.maydell@linaro.org>> wrote:
>>>
>>> On 6 October 2013 23:03, Gavin Guo <gavin.guo@canonical.com
>>> <mailto:gavin.guo@canonical.com>> wrote:
>>> > Does it mean the currently qemu can't support A15 vcpu running on
>>> host A7?
>>>
>>> No, that's a kernel restriction. That is why the patch description
>>> reads:
>>> # This patch adds support for running Cortex-A7 guests on Cortex-A7
>>> hosts.
>>>
>>> (What QEMU is currently missing is A7 support, so you can't ask it to
>>> run an A7 guest CPU.)
>>>
>>> -- PMM
>>>
>>>
>>> Thanks, I saw the checking in the kvm_vcpu_set_target(). I'm confused
>>> that what is the concern to run the same cpu type? Does it matter to run
>>> A15 on A7 or inverse?
>>
>> It does. MIDR registers are different. Cache size is different. It may
>> work, or it may not. And at the very least, you should present a
>> consistent view of the underlying system to the unsuspecting OS.
>>
>> M.
>> --
>> Jazz is not dead. It just smells funny...
>>
>
> Hi Marc,
>
> How about the guest os with 4 x A15 vcpus run on a TC2 with 5 cores
> enabled (2 x A15 + 3 x A7). Does it mean that the 4 x A15 vcpus need
> to run on the 2 x A15 real cpus and can't be migrate to the 3 x A7? It
This isn't what I said. If you want to migrate your A15 vcpus to an A7,
you need to make sure that your guest still sees an A15, despite running
on an A7.
> seems that running 4 x A15 vcpus on the 2 x A15 and 2 x A7 core and
> leaving 1 A7 idle can take more computing power if all of the 4 x A15
> guest os vcpus are full of loading. BTW, thanks for your reply,
> according to your reply I know the MIDR and cache size are different.
> Furthermore, I'd like to know if it is possible to make vcpu and real
> cpu in different type? If yes, I would like to study how to modify to
> make it work.
If you want to run KVM in a heterogeneous configuration (big-little
like), you need to be able to dynamically change the trapping of some
CP15 accesses, depending on which physical CPU your vcpu is running on.
So we need an infrastructure to select a HCR/HSTR/HCPTR configuration
based on the vcpu matching the CPU or not. And of course handling the
additional trapping, if necessary.
For A7 vs A15, I'd expect the trapping to be fairly minimal, but until
someone has spent quality time to write the above and work out what
actually needs trapping, KVM on big-little system will stay a pipe dream.
M.
--
Jazz is not dead. It just smells funny...
next prev parent reply other threads:[~2013-10-07 9:29 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-26 15:49 [PATCH 0/3] KVM: ARM: Cortex-A7 support and fixes Jonathan Austin
2013-09-26 15:49 ` [PATCH 1/3] KVM: ARM: fix the size of TTBCR_{T0SZ,T1SZ} masks Jonathan Austin
2013-09-26 16:07 ` Christoffer Dall
2013-09-26 15:49 ` [PATCH 2/3] KVM: ARM: Fix calculation of virtual CPU ID Jonathan Austin
2013-09-26 16:12 ` Christoffer Dall
2013-09-26 15:49 ` [PATCH 3/3] KVM: ARM: Add support for Cortex-A7 Jonathan Austin
2013-09-26 16:17 ` Christoffer Dall
2013-09-26 16:50 ` Marc Zyngier
2013-09-26 17:09 ` Jonathan Austin
[not found] ` <CA+eFSM1YdhBDMAvyXknMA62Ao3CEntMptdi7RD=NXis1F-BmfQ@mail.gmail.com>
2013-10-06 14:56 ` Peter Maydell
[not found] ` <CA+eFSM0k3mA4uOiEvmE_tfVjnpq8DpXV-=nJXhucUDePJRTYXw@mail.gmail.com>
2013-10-07 8:07 ` Marc Zyngier
2013-10-07 9:17 ` Gavin Guo
2013-10-07 9:29 ` Marc Zyngier [this message]
2013-10-09 13:06 ` Diana Craciun
2013-10-08 14:16 ` [PATCH 0/3] KVM: ARM: Cortex-A7 support and fixes Gavin Guo
2013-10-09 9:21 ` Jonathan Austin
2013-10-16 0:25 ` Christoffer Dall
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=52527EDC.4030605@arm.com \
--to=marc.zyngier@arm.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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;
as well as URLs for NNTP newsgroup(s).