diff options
Diffstat (limited to 'arch/arm/kvm/arm.c')
-rw-r--r-- | arch/arm/kvm/arm.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/arm/kvm/arm.c b/arch/arm/kvm/arm.c index 13205bd9b359..c9fe9d71be73 100644 --- a/arch/arm/kvm/arm.c +++ b/arch/arm/kvm/arm.c | |||
@@ -464,6 +464,8 @@ static void update_vttbr(struct kvm *kvm) | |||
464 | 464 | ||
465 | static int kvm_vcpu_first_run_init(struct kvm_vcpu *vcpu) | 465 | static int kvm_vcpu_first_run_init(struct kvm_vcpu *vcpu) |
466 | { | 466 | { |
467 | int ret; | ||
468 | |||
467 | if (likely(vcpu->arch.has_run_once)) | 469 | if (likely(vcpu->arch.has_run_once)) |
468 | return 0; | 470 | return 0; |
469 | 471 | ||
@@ -473,9 +475,8 @@ static int kvm_vcpu_first_run_init(struct kvm_vcpu *vcpu) | |||
473 | * Initialize the VGIC before running a vcpu the first time on | 475 | * Initialize the VGIC before running a vcpu the first time on |
474 | * this VM. | 476 | * this VM. |
475 | */ | 477 | */ |
476 | if (irqchip_in_kernel(vcpu->kvm) && | 478 | if (unlikely(!vgic_initialized(vcpu->kvm))) { |
477 | unlikely(!vgic_initialized(vcpu->kvm))) { | 479 | ret = kvm_vgic_init(vcpu->kvm); |
478 | int ret = kvm_vgic_init(vcpu->kvm); | ||
479 | if (ret) | 480 | if (ret) |
480 | return ret; | 481 | return ret; |
481 | } | 482 | } |