On Fri, 25 Jul 2025 15:40:58 +0100, Andre Przywara <andre.przywara@xxxxxxx> wrote: > > From: Marc Zyngier <maz@xxxxxxxxxx> > > KVM now allows to offset the arch timer counter values reported to a > guest, via a per-VM ioctl. This is conceptually similar to the effects > of CNTVOFF_EL2, but applies to both the emulated physical and virtual > counter, and also to all VCPUs. Not really. Architecturally, there is only a single, global counter, and multiple *views* of that counter. What this option does is to offset the global counter. Then, the various per-CPU offsets are applied on the views that can be affected by them. This is cumulative. So for example, CNTVCT_EL0 is affected by both the global offset and CNTVOFF_EL2 when read from EL0, EL1, and EL2 when E2H==0. Behind the scenes, this is of course implemented with CNTVOFF_EL2 (when it works), but that's not really relevant here. I'd suggest something along the lines of: "KVM allows the offsetting of the global counter in order to help with migration of a VM. This offset applies cumulatively with the offsets provided by the architecture. Although kvmtool doesn't provide a way to migrate a VM, controlling this offset is useful to test the timer subsystem." Thanks, M. -- Jazz isn't dead. It just smells funny.