[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Minios-devel] [UNIKRAFT PATCHv3 5/5] plat/common: Correct irqs_disabled result for Arm64

From: Wei Chen <wei.chen@xxxxxxx>

We had done a mistake in this API, when flags & PSR_I returns
non-zero, this means the CPU IRQ exception has been masked.
So this function should return non-zero for irqs_disabled.

Signed-off-by: Wei Chen <wei.chen@xxxxxxx>
Signed-off-by: Jia He <justin.he@xxxxxxx>
Acked-by: Julien Grall <julien.grall@xxxxxxx>
 plat/common/include/arm/arm64/irq.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/plat/common/include/arm/arm64/irq.h 
index 8f91e17..f582fc2 100644
--- a/plat/common/include/arm/arm64/irq.h
+++ b/plat/common/include/arm/arm64/irq.h
@@ -93,7 +93,7 @@ static inline int irqs_disabled(void)
        uint64_t flags;
-       return !(flags & PSR_I);
+       return (flags & PSR_I);
 #define local_irq_save(x)      __save_and_disable_irq(x)

Minios-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.