diff options
Diffstat (limited to 'arch/powerpc/kvm/booke.c')
-rw-r--r-- | arch/powerpc/kvm/booke.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c index 4d686cc6b260..8d4e35f5372c 100644 --- a/arch/powerpc/kvm/booke.c +++ b/arch/powerpc/kvm/booke.c | |||
@@ -21,6 +21,7 @@ | |||
21 | #include <linux/errno.h> | 21 | #include <linux/errno.h> |
22 | #include <linux/err.h> | 22 | #include <linux/err.h> |
23 | #include <linux/kvm_host.h> | 23 | #include <linux/kvm_host.h> |
24 | #include <linux/gfp.h> | ||
24 | #include <linux/module.h> | 25 | #include <linux/module.h> |
25 | #include <linux/vmalloc.h> | 26 | #include <linux/vmalloc.h> |
26 | #include <linux/fs.h> | 27 | #include <linux/fs.h> |
@@ -132,12 +133,18 @@ void kvmppc_core_queue_external(struct kvm_vcpu *vcpu, | |||
132 | kvmppc_booke_queue_irqprio(vcpu, BOOKE_IRQPRIO_EXTERNAL); | 133 | kvmppc_booke_queue_irqprio(vcpu, BOOKE_IRQPRIO_EXTERNAL); |
133 | } | 134 | } |
134 | 135 | ||
136 | void kvmppc_core_dequeue_external(struct kvm_vcpu *vcpu, | ||
137 | struct kvm_interrupt *irq) | ||
138 | { | ||
139 | clear_bit(BOOKE_IRQPRIO_EXTERNAL, &vcpu->arch.pending_exceptions); | ||
140 | } | ||
141 | |||
135 | /* Deliver the interrupt of the corresponding priority, if possible. */ | 142 | /* Deliver the interrupt of the corresponding priority, if possible. */ |
136 | static int kvmppc_booke_irqprio_deliver(struct kvm_vcpu *vcpu, | 143 | static int kvmppc_booke_irqprio_deliver(struct kvm_vcpu *vcpu, |
137 | unsigned int priority) | 144 | unsigned int priority) |
138 | { | 145 | { |
139 | int allowed = 0; | 146 | int allowed = 0; |
140 | ulong msr_mask; | 147 | ulong uninitialized_var(msr_mask); |
141 | bool update_esr = false, update_dear = false; | 148 | bool update_esr = false, update_dear = false; |
142 | 149 | ||
143 | switch (priority) { | 150 | switch (priority) { |
@@ -552,7 +559,10 @@ int kvm_arch_vcpu_ioctl_set_fpu(struct kvm_vcpu *vcpu, struct kvm_fpu *fpu) | |||
552 | int kvm_arch_vcpu_ioctl_translate(struct kvm_vcpu *vcpu, | 559 | int kvm_arch_vcpu_ioctl_translate(struct kvm_vcpu *vcpu, |
553 | struct kvm_translation *tr) | 560 | struct kvm_translation *tr) |
554 | { | 561 | { |
555 | return kvmppc_core_vcpu_translate(vcpu, tr); | 562 | int r; |
563 | |||
564 | r = kvmppc_core_vcpu_translate(vcpu, tr); | ||
565 | return r; | ||
556 | } | 566 | } |
557 | 567 | ||
558 | int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm, struct kvm_dirty_log *log) | 568 | int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm, struct kvm_dirty_log *log) |