From: Alexandru Elisei <alexandru.eli...@arm.com>

The irq_received field is modified by the interrupt handler. Make it
volatile so that the compiler doesn't reorder accesses with regard to
the instruction that will be causing the interrupt.

Suggested-by: Andre Przywara <andre.przyw...@arm.com>
Signed-off-by: Alexandru Elisei <alexandru.eli...@arm.com>
Signed-off-by: Andrew Jones <drjo...@redhat.com>
---
 arm/timer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arm/timer.c b/arm/timer.c
index e758e84855c3..82f891147b35 100644
--- a/arm/timer.c
+++ b/arm/timer.c
@@ -109,7 +109,7 @@ static void write_ptimer_ctl(u64 val)
 struct timer_info {
        u32 irq;
        u32 irq_flags;
-       bool irq_received;
+       volatile bool irq_received;
        u64 (*read_counter)(void);
        u64 (*read_cval)(void);
        void (*write_cval)(u64);
-- 
2.25.1

_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

Reply via email to