]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: KVM: fix handling of trapped 64bit coprocessor accesses
authorMarc Zyngier <marc.zyngier@arm.com>
Tue, 21 Jan 2014 18:56:26 +0000 (18:56 +0000)
committerMarc Zyngier <marc.zyngier@arm.com>
Mon, 3 Mar 2014 01:15:23 +0000 (01:15 +0000)
commit3d92846ae94c3cc9afa2a74011df4fa3066c3672
treed1ae722770cf15736001218ff33f952b45357fca
parent6af2f2da96ae194f44da9ad62f1983760216e0cc
ARM: KVM: fix handling of trapped 64bit coprocessor accesses

Commit 5790897129fc (ARM: KVM: Fix 64-bit coprocessor handling)
changed the way we match the 64bit coprocessor access from
user space, but didn't update the trap handler for the same
set of registers.

The effect is that a trapped 64bit access is never matched, leading
to a fault being injected into the guest. This went unnoticed as we
didn't really trap any 64bit register so far.

Placing the CRm field of the access into the CRn field of the matching
structure fixes the problem. Also update the debug feature to emit the
expected string in case of failing match.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm/kvm/coproc.c
arch/arm/kvm/coproc.h