OSDN Git Service

arm/arm64: KVM: Take mmap_sem in kvm_arch_prepare_memory_region
authorMarc Zyngier <marc.zyngier@arm.com>
Thu, 16 Mar 2017 18:20:50 +0000 (18:20 +0000)
committerMarc Zyngier <marc.zyngier@arm.com>
Mon, 20 Mar 2017 10:48:35 +0000 (10:48 +0000)
commit72f310481a08db821b614e7b5d00febcc9064b36
tree9de080bee8b65cb651087d7ec027ee3d59448423
parent90f6e150e44a0dc3883110eeb3ab35d1be42b6bb
arm/arm64: KVM: Take mmap_sem in kvm_arch_prepare_memory_region

We don't hold the mmap_sem while searching for VMAs (via find_vma), in
kvm_arch_prepare_memory_region, which can end up in expected failures.

Fixes: commit 8eef91239e57 ("arm/arm64: KVM: map MMIO regions at creation time")
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Eric Auger <eric.auger@rehat.com>
Cc: stable@vger.kernel.org # v3.18+
Reviewed-by: Christoffer Dall <cdall@linaro.org>
[ Handle dirty page logging failure case ]
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
arch/arm/kvm/mmu.c