|
@@ -1714,7 +1714,8 @@ int kvm_mmu_init(void)
|
|
|
kern_hyp_va(PAGE_OFFSET), kern_hyp_va(~0UL));
|
|
|
|
|
|
if (hyp_idmap_start >= kern_hyp_va(PAGE_OFFSET) &&
|
|
|
- hyp_idmap_start < kern_hyp_va(~0UL)) {
|
|
|
+ hyp_idmap_start < kern_hyp_va(~0UL) &&
|
|
|
+ hyp_idmap_start != (unsigned long)__hyp_idmap_text_start) {
|
|
|
/*
|
|
|
* The idmap page is intersecting with the VA space,
|
|
|
* it is not safe to continue further.
|
|
@@ -1893,6 +1894,7 @@ void kvm_arch_memslots_updated(struct kvm *kvm, struct kvm_memslots *slots)
|
|
|
|
|
|
void kvm_arch_flush_shadow_all(struct kvm *kvm)
|
|
|
{
|
|
|
+ kvm_free_stage2_pgd(kvm);
|
|
|
}
|
|
|
|
|
|
void kvm_arch_flush_shadow_memslot(struct kvm *kvm,
|