On Mon, Dec 01, 2014 at 10:54:44AM +0100, Paolo Bonzini wrote: > > > On 01/12/2014 10:16, Ard Biesheuvel wrote: > > On 21 November 2014 at 12:24, Christoffer Dall > > <christoffer.dall@xxxxxxxxxx> wrote: > >> On Mon, Nov 10, 2014 at 09:33:55AM +0100, Ard Biesheuvel wrote: > >>> Instead of using kvm_is_mmio_pfn() to decide whether a host region > >>> should be stage 2 mapped with device attributes, add a new static > >>> function kvm_is_device_pfn() that disregards RAM pages with the > >>> reserved bit set, as those should usually not be mapped as device > >>> memory. > >>> > >>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> > >>> --- > >>> arch/arm/kvm/mmu.c | 7 ++++++- > >>> 1 file changed, 6 insertions(+), 1 deletion(-) > >>> > >>> diff --git a/arch/arm/kvm/mmu.c b/arch/arm/kvm/mmu.c > >>> index 57a403a5c22b..b007438242e2 100644 > >>> --- a/arch/arm/kvm/mmu.c > >>> +++ b/arch/arm/kvm/mmu.c > >>> @@ -834,6 +834,11 @@ static bool kvm_is_write_fault(struct kvm_vcpu *vcpu) > >>> return kvm_vcpu_dabt_iswrite(vcpu); > >>> } > >>> > >>> +static bool kvm_is_device_pfn(unsigned long pfn) > >>> +{ > >>> + return !pfn_valid(pfn); > >>> +} > >>> + > >>> static int user_mem_abort(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa, > >>> struct kvm_memory_slot *memslot, unsigned long hva, > >>> unsigned long fault_status) > >>> @@ -904,7 +909,7 @@ static int user_mem_abort(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa, > >>> if (is_error_pfn(pfn)) > >>> return -EFAULT; > >>> > >>> - if (kvm_is_mmio_pfn(pfn)) > >>> + if (kvm_is_device_pfn(pfn)) > >>> mem_type = PAGE_S2_DEVICE; > >>> > >>> spin_lock(&kvm->mmu_lock); > >>> -- > >>> 1.8.3.2 > >>> > >> Acked-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx> > > > > These 2 patches are now in 3.18-rc7, so they can be dropped from the > > kvmarm queue/next/etc branches > > If they are in queue, they can be dropped. If they are in next, please > leave them in as the next branch should not be rebased. Duplicate > commits are generally harmless. > They are in kvmarm/next and will stay there ;) -Christoffer -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html