[PATCH v4 00/10] Independent per-CPU data section for nVHE
Christopher Lameter
cl at linux.com
Thu Sep 24 06:10:52 EDT 2020
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.
More information about the linux-arm-kernel
mailing list