git: 6fef0c9ee64c - main - arm64/vgic_v3: Fix an inverted test when reading GICD_I<C|S>ENABLER

From: Mark Johnston <markj_at_FreeBSD.org>
Date: Thu, 15 Jan 2026 14:18:59 UTC
The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=6fef0c9ee64cea1f22b6a33a0c4dd39f605b7465

commit 6fef0c9ee64cea1f22b6a33a0c4dd39f605b7465
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2026-01-15 14:04:06 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2026-01-15 14:04:06 +0000

    arm64/vgic_v3: Fix an inverted test when reading GICD_I<C|S>ENABLER
    
    On read, these registers' fields return 1 if forwarding of the
    corresponding interrupt is enabled, and 0 otherwise.  The test in
    read_enabler() was inverted.
    
    Reported by:    Kevin Day <kevin@your.org>
    Reviewed by:    andrew
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D54678
---
 sys/arm64/vmm/io/vgic_v3.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/arm64/vmm/io/vgic_v3.c b/sys/arm64/vmm/io/vgic_v3.c
index 22cd06b09d7d..199749c12b9f 100644
--- a/sys/arm64/vmm/io/vgic_v3.c
+++ b/sys/arm64/vmm/io/vgic_v3.c
@@ -672,7 +672,7 @@ read_enabler(struct hypctx *hypctx, int n)
 		if (irq == NULL)
 			continue;
 
-		if (!irq->enabled)
+		if (irq->enabled)
 			ret |= 1u << i;
 		vgic_v3_release_irq(irq);
 	}