arm64: KVM: Switch vgic save/restore to alternative_insn
[deliverable/linux.git] / virt / kvm / arm / vgic.c
index 8d550ff14700c8a628b9c2c6ab55301f6bd0e92b..003ba74e48d1796bbbb7c38f5fb37fe6a229cd03 100644 (file)
@@ -1561,6 +1561,9 @@ int kvm_vgic_inject_irq(struct kvm *kvm, int cpuid, unsigned int irq_num,
                        goto out;
        }
 
+       if (irq_num >= kvm->arch.vgic.nr_irqs)
+               return -EINVAL;
+
        vcpu_id = vgic_update_irq_pending(kvm, cpuid, irq_num, level);
        if (vcpu_id >= 0) {
                /* kick the specified vcpu */
@@ -2125,9 +2128,6 @@ int kvm_vgic_hyp_init(void)
                goto out_free_irq;
        }
 
-       /* Callback into for arch code for setup */
-       vgic_arch_setup(vgic);
-
        on_each_cpu(vgic_init_maintenance_interrupt, NULL, 1);
 
        return 0;
@@ -2141,7 +2141,7 @@ int kvm_irq_map_gsi(struct kvm *kvm,
                    struct kvm_kernel_irq_routing_entry *entries,
                    int gsi)
 {
-       return gsi;
+       return 0;
 }
 
 int kvm_irq_map_chip_pin(struct kvm *kvm, unsigned irqchip, unsigned pin)
This page took 0.025993 seconds and 5 git commands to generate.