refactor(interrupts): remove api_interrupt_inject
api_interrupt_inject and vcpu_interrupt_inject were performing the
same function, as the next argument was never being used. So just
use vcpu_interrupt_inject.
Also remove unnecessary if statement from vcpu_interrupt_inject.
Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
Change-Id: I36c5157b7961e5a85b3e485f0a309b5dddf7c21a
diff --git a/src/vcpu.c b/src/vcpu.c
index 3375465..925158b 100644
--- a/src/vcpu.c
+++ b/src/vcpu.c
@@ -278,23 +278,13 @@
* if it is enabled and was not previously pending. Otherwise we can
* skip everything except setting the pending bit.
*/
- if (!(vcpu_is_virt_interrupt_enabled(interrupts, intid) &&
- !vcpu_is_virt_interrupt_pending(interrupts, intid))) {
- goto out;
+ if ((vcpu_is_virt_interrupt_enabled(interrupts, intid) &&
+ !vcpu_is_virt_interrupt_pending(interrupts, intid))) {
+ /* Increment the count. */
+ vcpu_interrupt_count_increment(target_locked, interrupts,
+ intid);
}
- /* Increment the count. */
- vcpu_interrupt_count_increment(target_locked, interrupts, intid);
-
- /*
- * Only need to update state if there was not already an
- * interrupt enabled and pending.
- */
- if (vcpu_interrupt_count_get(target_locked) != 1) {
- goto out;
- }
-
-out:
/* Either way, make it pending. */
vcpu_virt_interrupt_set_pending(interrupts, intid);
}