From: Marc Zyngier <maz@kernel.org>
To: Andrew Jones <drjones@redhat.com>
Cc: Ying Fang <fangying1@huawei.com>,
kvm@vger.kernel.org, kvmarm@lists.cs.columbia.edu,
james.morse@arm.com, julien.thierry.kdev@gmail.com,
suzuki.poulose@arm.com, zhang.zhanghailiang@huawei.com,
alex.chen@huawei.com
Subject: Re: [PATCH 2/2] kvm/arm: Add mp_affinity for arm vcpu
Date: Thu, 17 Sep 2020 09:42:07 +0100 [thread overview]
Message-ID: <198c63d5e9e17ddb4c3848845891301c@kernel.org> (raw)
In-Reply-To: <20200917080429.jimidzdtdskwhbdx@kamzik.brq.redhat.com>
On 2020-09-17 09:04, Andrew Jones wrote:
> On Thu, Sep 17, 2020 at 08:47:42AM +0100, Marc Zyngier wrote:
>> On 2020-09-17 03:30, Ying Fang wrote:
>> > Allow userspace to set MPIDR using vcpu ioctl KVM_ARM_SET_MP_AFFINITY,
>> > so that we can support cpu topology for arm.
>>
>> MPIDR has *nothing* to do with CPU topology in the ARM architecture.
>> I encourage you to have a look at the ARM ARM and find out how often
>> the word "topology" is used in conjunction with the MPIDR_EL1
>> register.
>>
>
> Hi Marc,
>
> I mostly agree. However, the CPU topology descriptions use MPIDR to
> identify PEs. If userspace wants to build topology descriptions then
> it either needs to
>
> 1) build them after instantiating all KVM VCPUs in order to query KVM
> for each MPIDR, or
> 2) have a way to ask KVM for an MPIDR of given VCPU ID in advance
> (maybe just a scratch VCPU), or
> 3) have control over the MPIDRs so it can choose them when it likes,
> use them for topology descriptions, and then instantiate KVM VCPUs
> with them.
>
> I think (3) is the most robust approach, and it has the least overhead.
I don't disagree with the goal, and not even with the choice of
implementation (though I have huge reservations about its quality).
But the key word here is *userspace*. Only userspace has a notion of
how MPIDR values map to the assumed topology. That's not something
that KVM does nor should interpret (aside from the GIC-induced Aff0
brain-damage). So talking of "topology" in a KVM kernel patch sends
the wrong message, and that's all this remark was about.
M.
--
Jazz is not dead. It just smells funny...
next prev parent reply other threads:[~2020-09-17 8:42 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-17 2:30 [PATCH 0/2] KVM: arm64: Add support for setting MPIDR Ying Fang
2020-09-17 2:30 ` [PATCH 1/2] KVM: arm64: add KVM_CAP_ARM_MP_AFFINITY extension Ying Fang
2020-09-17 7:23 ` Andrew Jones
2020-09-17 2:30 ` [PATCH 2/2] kvm/arm: Add mp_affinity for arm vcpu Ying Fang
2020-09-17 7:36 ` Andrew Jones
2020-09-17 7:47 ` Marc Zyngier
2020-09-17 8:04 ` Andrew Jones
2020-09-17 8:42 ` Marc Zyngier [this message]
2020-09-17 9:47 ` Alexandru Elisei
2020-09-17 10:01 ` Marc Zyngier
2020-09-17 10:53 ` Andrew Jones
2020-09-17 11:51 ` Ying Fang
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=198c63d5e9e17ddb4c3848845891301c@kernel.org \
--to=maz@kernel.org \
--cc=alex.chen@huawei.com \
--cc=drjones@redhat.com \
--cc=fangying1@huawei.com \
--cc=james.morse@arm.com \
--cc=julien.thierry.kdev@gmail.com \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.cs.columbia.edu \
--cc=suzuki.poulose@arm.com \
--cc=zhang.zhanghailiang@huawei.com \
/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