[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.22.394.2009241003100.1613@www.lameter.com>
Date: Thu, 24 Sep 2020 10:10:52 +0000 (UTC)
From: Christopher Lameter <cl@...ux.com>
To: David Brazdil <dbrazdil@...gle.com>
cc: kvmarm@...ts.cs.columbia.edu,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>, Marc Zyngier <maz@...nel.org>,
James Morse <james.morse@....com>,
Julien Thierry <julien.thierry.kdev@...il.com>,
Suzuki K Poulose <suzuki.poulose@....com>,
Dennis Zhou <dennis@...nel.org>, Tejun Heo <tj@...nel.org>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
kernel-team@...roid.com
Subject: Re: [PATCH v4 00/10] Independent per-CPU data section for nVHE
On Tue, 22 Sep 2020, David Brazdil wrote:
> Introduce '.hyp.data..percpu' as part of ongoing effort to make nVHE
> hyp code self-contained and independent of the rest of the kernel.
The percpu subsystems point is to enable the use of special hardware
instructions that can perform address calculation and a memory operation
in one interruptible instruction. This is in particular useful to avoid
higher overhead for memory management related counters because preempt
disable/enable etc can be avoided.
ARM cannot do that and thus has a LC/SC loop.
This is a patchset for ARM64 so its not clear to me what kind of advantage
there would be against a simple implementation that does a regular fetch
from a base address with an offset.
> Main benefits:
> * independent nVHE per-CPU data section that can be unmapped from host,
> * more robust linking of nVHE hyp code,
> * no need for hyp-specific macros to access per-CPU variables.
Maybe simply don't use percpu variables for your arm code? Those pointers
to data will be much more indepedent of the rest of the kernel and allow a
much higher degree of being self-contained.
Powered by blists - more mailing lists