Merge tag 'kvmarm-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmar...
[linux-2.6-microblaze.git] / arch / arm64 / kvm / vgic / vgic-v3.c
index 5fedaee..a33d436 100644 (file)
@@ -554,12 +554,12 @@ int vgic_v3_map_resources(struct kvm *kvm)
        }
 
        if (IS_VGIC_ADDR_UNDEF(dist->vgic_dist_base)) {
-               kvm_err("Need to set vgic distributor addresses first\n");
+               kvm_debug("Need to set vgic distributor addresses first\n");
                return -ENXIO;
        }
 
        if (!vgic_v3_check_base(kvm)) {
-               kvm_err("VGIC redist and dist frames overlap\n");
+               kvm_debug("VGIC redist and dist frames overlap\n");
                return -EINVAL;
        }
 
@@ -651,7 +651,7 @@ int vgic_v3_probe(const struct gic_kvm_info *info)
        } else if (!PAGE_ALIGNED(info->vcpu.start)) {
                pr_warn("GICV physical address 0x%llx not page aligned\n",
                        (unsigned long long)info->vcpu.start);
-       } else {
+       } else if (kvm_get_mode() != KVM_MODE_PROTECTED) {
                kvm_vgic_global_state.vcpu_base = info->vcpu.start;
                kvm_vgic_global_state.can_emulate_gicv2 = true;
                ret = kvm_register_vgic_device(KVM_DEV_TYPE_ARM_VGIC_V2);