From nobody Fri Oct 09 12:07:57 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4j1Qby1tTDz6vM5V for ; Fri, 09 Oct 2026 12:07:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4j1Qbx6zBJz3CG6 for ; Fri, 09 Oct 2026 12:07:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791547678; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xl0E9DpmLpdWH8BWjgYEJ7MdUyMHibF2bKaivj/Wb8Q=; b=gadVLbjy78n4kYKutYUxxVy/oe+UXc5nfIFoygLpTtqPtuhVCsHCvUQ3sbYzooS7Pvmmfi /F5wL9By+j2IWvDkkSRCUruS0nkjBb1j9pe26Wp1FDz1cxco+2AKLorzU4iylG55YbzBXP ES9zp6JHTuwFtS3tpx1TPoSxGuYQhW7ar67/y51m16lrCYGvIfbtDv/00rM8QdDC+iNVx9 08j76Q8Ym6vqvi5V4RjiCknnHvvnmhz9gBooRYedFlQJhNzhCOdvzGr3DB/4CXO56K0Cap +ngP4X+tstg1L2LqCu63hakhiO3FlSS9gmJLM3AR8tIpylemwznpqyM5SO806A== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1791547678; b=FDtQ1TsuRS6LwSbPUXwwWW1jSsr54GFrtR0nFX3hF7YYTZgXe0Rf7fqOjKACOsE9tB9rBT /R4Budjm3JwbhZcy9eMLAA8L3BrdQ3iNcgqC0XB0zO+JA0mmPfNweZOCT9oqeBapbmEO2c rKpX3J7+DUyzOCLWZez4VVBmXYXN/LO6NLHBoCo79W3gQEg9mFQxXnT+8aPJovG+pxiJtl yrict2gv1BLugDmiqn0Jc329TXPCR8/m+GljLZiMGhZovDfYYNbn64g25Bpzcey1AFMDhe dBPamtveqj9KAzavysL4gZFg4sQZZINg2UgsuU/S83z9nPkMznSJ1xCpRcECxw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1791547678; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xl0E9DpmLpdWH8BWjgYEJ7MdUyMHibF2bKaivj/Wb8Q=; b=k/UCpScLU5yD/Y71eiuQOBoDUMGtB3i9jL5eJCcPM6c1DMhA/l4EXj4tDqUo6QGo9fwLBf 9gJRA5WRFxTY6MylsfvEJdXUBxOs3OWsGtdGkKoR6Wt5xgmqTyUi+7Z3NE2WPPgHLiNMHj O4kekFCL8nFBd6j5qxr78++dNLRbgci96xqNiFji3mk9d3yYVE/Oel3IU/wCFWZVVJbeuK d5FXL/cPRaqDkiY4PLvEa1Kw2SkjDVw5sQchTzJxXtCmfdGvY5xlYVKLGL2ylaqX12W2Pf YJK0ceomnmrUJUJNSFvFm7Vkb6qPE9Zb4nocPGNQgG5BuA9FeEbcLJDNhdGV2Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4j1Qbx5mpjz1PKn for ; Fri, 09 Oct 2026 12:07:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1e82f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 09 Oct 2026 12:07:57 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Kajetan Puchalski From: Andrew Turner Subject: git: 7081201eb073 - main - arm64/vmm: vgic_v3: Set EOI for level-triggered interrupts List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7081201eb07367be73e43c5f878dfec51e8fe0d7 Auto-Submitted: auto-generated Date: Fri, 09 Oct 2026 12:07:57 +0000 Message-Id: <6ac8d91d.1e82f.a3ec80b@gitrepo.freebsd.org> The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=7081201eb07367be73e43c5f878dfec51e8fe0d7 commit 7081201eb07367be73e43c5f878dfec51e8fe0d7 Author: Kajetan Puchalski AuthorDate: 2026-09-17 14:19:27 +0000 Commit: Andrew Turner CommitDate: 2026-10-09 11:55:17 +0000 arm64/vmm: vgic_v3: Set EOI for level-triggered interrupts ICH_LR_EL2 bit 41 (EOI) determines whether a maintenance interrupt will be asserted if the interrupt identified by the LR's vINTID is deactivated. For level-triggered interrupts, that maintenance interrupt is necessary for the host to resample the current level once the interrupt is deactivated. Set the EOI bit when flushing level-triggered interrupts into LRs. Signed-off-by: Kajetan Puchalski Reviewed by: andrew Sponsored by: Arm Ltd Pull Request: https://github.com/freebsd/freebsd-src/pull/2437 --- sys/arm64/vmm/io/vgic_v3.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/sys/arm64/vmm/io/vgic_v3.c b/sys/arm64/vmm/io/vgic_v3.c index 39579ce99dd6..447026fdcf60 100644 --- a/sys/arm64/vmm/io/vgic_v3.c +++ b/sys/arm64/vmm/io/vgic_v3.c @@ -1992,11 +1992,10 @@ vgic_v3_flush_hwstate(device_t dev, struct hypctx *hypctx) ICH_LR_EL2_STATE_ACTIVE; } -#ifdef notyet - /* TODO: Check why this is needed */ - if ((irq->config & _MASK) == LEVEL) - *hypctx_sys_reg(hypctx, HOST_ICH_LR_EL2(i)) |= ICH_LR_EL2_EOI; -#endif + if ((irq->config & VGIC_CONFIG_MASK) == VGIC_CONFIG_LEVEL) { + *hypctx_sys_reg(hypctx, + HOST_ICH_LR_EL2(i)) |= ICH_LR_EL2_EOI; + } if (!irq->active && vgic_v3_irq_pending(irq)) { *hypctx_sys_reg(hypctx, HOST_ICH_LR_EL2(i)) |=