-
Wei Huang authored
Recently the generic timer test of kvm-unit-tests failed to complete (stalled) when a physical timer is being used. This issue is caused by incorrect update of CNTP_CVAL when CNTP_TVAL is being accessed, introduced by 'Commit 84135d3d ("KVM: arm/arm64: consolidate arch timer trap handlers")'. According to Arm ARM, the read/write behavior of accesses to the TVAL registers is expected to be: * READ: TimerValue = (CompareValue – (Counter - Offset) * WRITE: CompareValue = ((Counter - Offset) + Sign(TimerValue) This patch fixes the TVAL read/write code path according to the specification. Fixes: 84135d3d ("KVM: arm/arm64: consolidate arch timer trap handlers") Signed-off-by:
Wei Huang <wei@redhat.com> [maz: commit message tidy-up] Signed-off-by:
Marc Zyngier <marc.zyngier@arm.com>
8fa76162