From nobody Sun Jul 26 11:52:32 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1782305210; cv=none; d=zohomail.com; s=zohoarc; b=WbQCd8xj+ubRzuZ3fyBAMAevxUXVfLamL+sVyfkAU5wTdXv3QttSB2V2HvbmtLY8TV03yRZJueGVAwwVcJn08cHwMiU+bDtgFnWOze5JvusgRcEFz8/gfIgtE5ol3IwD753rFOj1dZG8RDfi6SklIa291WsB3ityGXpVV352res= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1782305210; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=jJY+W/ZKEQvF6jKnVZwMRA0n7P4OO5L2LHPk6wLaYKI=; b=XQ5ZhHKlXwxUZEMMK2skofmBAFtQixdxbuRDVd5F7LVKN7yA/tNPJJPZsKxRXQxyHmCH6c1PEnQk5GXnCXUIiE5jW7vH9M2FBxG4UptOEb966IpeGs8nPIoR3IbZIylWElapfbyHVg0vAngd6JSFCL/WOzpCLub27UQUdz6lueI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1782305210154316.31889098537977; Wed, 24 Jun 2026 05:46:50 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wcMzS-0003TU-NX; Wed, 24 Jun 2026 08:46:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wcMz4-00038V-QZ for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:54 -0400 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wcMyz-0006Nx-VD for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:36 -0400 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-46019b190b6so844444f8f.3 for ; Wed, 24 Jun 2026 05:45:33 -0700 (PDT) Received: from draig.lan ([185.124.0.195]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4924944faa8sm361273435e9.13.2026.06.24.05.45.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Jun 2026 05:45:29 -0700 (PDT) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 23CE85F845; Wed, 24 Jun 2026 13:45:28 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1782305132; x=1782909932; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jJY+W/ZKEQvF6jKnVZwMRA0n7P4OO5L2LHPk6wLaYKI=; b=g0iQ/Z+37U9b8RtAsvzkxT7BTh7nhsEH4YsYQHll+e6p7IP1q9zZDQKyBMRS+yelQf bWjejhp3vH80ZhnGuReim7wFNdO2Dz/I+1PvDqeem2TIVwBJBG0xhSmKaHKL0ae99tWa 6cYEwUnqfp9FlmWW2o/7OAz+LrGNyavgnDJ5tH+48VDC1o+QNHaPF9N8Tp7fviroMcWw kw/kgJw81u5aePrbMzhlnJ3YYejIQfmgm8EJ7qBk5G+/mRDLcB9zIQeFGh0eeSOIJIKK GdnYRymzfffnfVsjmSNqHuIQO7M8KWtJqdzKqo0EppwvDG7wy4mLssp+qNAeFEVtZUAT lcTQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782305132; x=1782909932; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=jJY+W/ZKEQvF6jKnVZwMRA0n7P4OO5L2LHPk6wLaYKI=; b=DU1J87LaC4ZhG3IjFb8uT9K9nm4vD3NK2Qw0T6ZDtVroLLZfIBKmmB5KKubnqRO1T0 LcgGMj5vJeyAcVfRnYE1wfVOApruuYo8k0Ij7uJ6IzaWgEx2e4/+EiB7GGzH5AhzZp5G zszIRG1s+KzLMyjRH5zcf+C625a9PTWi0ni1c2r9m069GmyJRi2oWN6LtcEZYxetJeX/ dOVLzQsJuwBo81I3uZgxED6rYMbJwyNF+cz5begAwNG8fYyQxfvwlUg51Ovlw9P1YAob H9qXDnbF5fzJvRxpaid5+KmMbi5Etckxx7cKq78OVn7to2Uc/sANQzKpzHoAMar6F5wf YozA== X-Gm-Message-State: AOJu0YzNfOWd5peEp1pQ/3prsXbSZeC6YlA1DdH7ipkQk5EK6ls4ts5r Y19tUWumdeyMSGxjBWbfcJGHCkO/wj9qMm5CKx56GpoG8USHB45T17x5fG044/NhvwU= X-Gm-Gg: AfdE7cnacLbU/Wwn8teENGfqxA07qiZMv684FD28g0fEPj9KwbXMtsvf0gkdwl0uJNB TYnyYv3pYuzuwLvvVSv3lz+zh4lG1dPJwL3Q2+Fnb/T8yMt2xSr3ZqH8KXfvqBagbjNbJ4LkBk1 aK8UtLW5/JpRbU5mhQaE9JF977Aifx87ab6tRx+wGnWTUAdgPFUS9Q3+bNQAon/d4T20WLgGbBV UWS7ADwW18IqJxR5KweKhpUTy7n9poW9T9ZHgOs8pNCdqeLYAuewg1sZ46U5o3gDXkPbCfLCxe5 8aI8vojfrB+dv4B9Ggy4Jm12KxUeDaEga246JxCV5mJc8GqktfLMlqugIudfmkEoZKeqUP0vEqu dwhZP/TIIRUT3D4etrZ4MbAYM0pZBNPh9lDdWEFhrQx5avO22gCqkWylbuWgRg+cpkp95UzywRA wKRf+TziVNoBtJ X-Received: by 2002:a05:600c:3148:b0:491:9969:739d with SMTP id 5b1f17b1804b1-492608794f2mr40868705e9.29.1782305132228; Wed, 24 Jun 2026 05:45:32 -0700 (PDT) From: =?UTF-8?q?Alex=20Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: Pierrick Bouvier , qemu-arm@nongnu.org, Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Richard Henderson Subject: [PATCH v3 1/6] target/arm: split evaluation of CNTHCTL timer IRQ masks Date: Wed, 24 Jun 2026 13:45:22 +0100 Message-ID: <20260624124527.1018912-2-alex.bennee@linaro.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260624124527.1018912-1-alex.bennee@linaro.org> References: <20260624124527.1018912-1-alex.bennee@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::429; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x429.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1782305210877158500 Whether the physical and virtual timer IRQs are masked are independent of each other so the checking of CNTHCTL:CNTPMASK shouldn't depend of not changing CNTVMASK. While unlikely to be seen in real life we should still make sure we behave correctly. Reviewed-by: Richard Henderson Signed-off-by: Alex Benn=C3=A9e --- target/arm/helper.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/target/arm/helper.c b/target/arm/helper.c index a234aa031c0..3d52cdc4a5e 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -1802,7 +1802,8 @@ static void gt_cnthctl_write(CPUARMState *env, const = ARMCPRegInfo *ri, =20 if ((oldval ^ value) & R_CNTHCTL_CNTVMASK_MASK) { gt_update_irq(cpu, GTIMER_VIRT); - } else if ((oldval ^ value) & R_CNTHCTL_CNTPMASK_MASK) { + } + if ((oldval ^ value) & R_CNTHCTL_CNTPMASK_MASK) { gt_update_irq(cpu, GTIMER_PHYS); } } --=20 2.47.3 From nobody Sun Jul 26 11:52:32 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1782305296; cv=none; d=zohomail.com; s=zohoarc; b=G1p9wgyG1TE1TeP3CIBrRm6mMQmN7Ed2p/9thHg3KTWAKIBveJ1fmTkvSQD1qPUolun30KjZu6pu0iuriHd2t+WKsWZkTvCL28bVqMJvCJolTgvzr5Ap+cMge4+LZqy02E2lCaso19Hb8nP8ZisY8nNXSObXAhlAfxII65pYXy8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1782305296; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=pq3pVOWs5xUz0luOR7Gba+BoRAVEKlJAiyWE6ZD8t04=; b=VF9ZNTqvOLud80c19tu6u31k7m77VwmTlOy2Bpku97/PEr7g9S06mNTbZLpAm/ynh2cQ+fX2f7PaPgFUNSdI6XnXQp9U6iv4aw8XL73stgJW6u9utx8X4o5lRhx6hjnQsBQAfaxAYDNvR+Ve1EflIS+SmyEeudS3r+ngFC0fdno= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1782305296663932.4132960715524; Wed, 24 Jun 2026 05:48:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wcMzQ-0003Ov-Pw; Wed, 24 Jun 2026 08:46:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wcMz1-000387-VV for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:38 -0400 Received: from mail-wm1-x335.google.com ([2a00:1450:4864:20::335]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wcMyy-0006Mx-UU for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:35 -0400 Received: by mail-wm1-x335.google.com with SMTP id 5b1f17b1804b1-490ace40f4bso10149225e9.3 for ; Wed, 24 Jun 2026 05:45:31 -0700 (PDT) Received: from draig.lan ([185.124.0.195]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4924923c862sm349689185e9.7.2026.06.24.05.45.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Jun 2026 05:45:29 -0700 (PDT) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 3845F5F8E5; Wed, 24 Jun 2026 13:45:28 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1782305130; x=1782909930; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=pq3pVOWs5xUz0luOR7Gba+BoRAVEKlJAiyWE6ZD8t04=; b=dqX6vjSWf8zgMx4A/ItossrMA1ASCoiPnMxLqfnI1t8+vGJkRh/4U2qKw9SnprxAdH 2fgLYMjhgujmeRltX1AsrxOjUej6yWwSfiCBkaB8KcmlvDgfPqincsbhleNp+noeMW3p kig++Ab8PRHTgY3tcZZqJzevbGJ8dKDFJIIW51KcgE+nTGtNwVwowm6KpeDz7ACSQ4IN 9TLLBVCNE2LgJAdmTFH39/WWalsh6mjQrfWO5Lkhb9Qa7lLsRFZGmUzmBFHXz/DpfR1q BAjNSlGzt1ki+YNhZW9mkCMb/v8VJeqzOOH97JV5qjkrYGSYw7t9OKeiMi9EJxPZ08Hg mjVw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782305130; x=1782909930; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=pq3pVOWs5xUz0luOR7Gba+BoRAVEKlJAiyWE6ZD8t04=; b=X14cxxti5cQz3PQuXDpBU+h/na1Fx9A3br8BglrL25Ydj8Olu1nbgZHCryLJpSq75b ruxxg+5h2tJxnU7sEGwJuNEdZCvODVKjBvPJYaFcqTmBtZyC4odjXr9w1lmbOA2fgK23 pxWG7RUMJgPODu3xJZPoohBURHwp5YKCc9Gn+kR2q4NAT8pAOdbMK3H123F9Zdu5dSvR ZfvdlaskhIMGHR5YuXwQa/Lq7OBBQAZqo7o7fSYUxcbN97OZpvObXPhLNw38ds/4ITWo CmenUdj55E0DmwhZ1Dx6Irefg2ogwaIgc7Je2rxu084/ju7FgbVLSE+ZroOmzirRs/0q LTKw== X-Gm-Message-State: AOJu0Yzt6U77IwwTbqufM8pn+Ms2pqNnZPlOtwyYmXNj7OngpqjPGGYt W5w2oxlD3qGCfmOxatHa95iCvFnFWD/RNnGcjqrHdpfuoDoLCEVuGY2lxJ8wjZsmPZA= X-Gm-Gg: AfdE7clh1vhdRvA4PT3DUfhQmsl+VZgN2uT77ovXU4i63chnkqKOCi3VJA6vCAiZNA6 G6o71v7TzakOlz4Jp2GnZJksTP7lvMyz/SflQO8T3cepd6dZcUsF7/mMwGnvs2pMGOnxDR/tENU TAnHvrG8xyAs8CD8Tmgey0wf5G8I6C/8nvZSt5rp+fp5iHg/Vtisdc4Y5TeHzJIWnR4UL6VI8ex 0aAyRaTmoOaePJPUauzYtlYzDGq5tRhl+f8s0Fdp8qcP4xmPS2YE/xKbTBzBfsbsQ2Hest6xJpG 3uCg0xv/dzpiTimR3vy4uxT9HKW1/G5G4yVybTyD4a1hqjyCPxCNlZgYQDYyYgxmyXhkaSnU58i zvI7t5paea4KYwThAWJCthdrbhs0dcCra1YCJdYY5Q6y1/2fsc+HhQ+otrZJIIdD9DwVmOG+F7M gw1f5juF4IRY/N X-Received: by 2002:a05:600c:1d1e:b0:48a:906b:14ca with SMTP id 5b1f17b1804b1-49260873781mr43398815e9.20.1782305130246; Wed, 24 Jun 2026 05:45:30 -0700 (PDT) From: =?UTF-8?q?Alex=20Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: Pierrick Bouvier , qemu-arm@nongnu.org, Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Richard Henderson Subject: [PATCH v3 2/6] target/arm: trigger timer recalculation when toggling CNTHCTL:ECV Date: Wed, 24 Jun 2026 13:45:23 +0100 Message-ID: <20260624124527.1018912-3-alex.bennee@linaro.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260624124527.1018912-1-alex.bennee@linaro.org> References: <20260624124527.1018912-1-alex.bennee@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::335; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x335.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1782305297358158500 When toggling the state of ECV we affect the offset applied to timers. As a result we should trigger a recalculation of the timer value to take into account the new offset. Reviewed-by: Richard Henderson Signed-off-by: Alex Benn=C3=A9e --- target/arm/helper.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/target/arm/helper.c b/target/arm/helper.c index 3d52cdc4a5e..3f0707126b5 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -1806,6 +1806,9 @@ static void gt_cnthctl_write(CPUARMState *env, const = ARMCPRegInfo *ri, if ((oldval ^ value) & R_CNTHCTL_CNTPMASK_MASK) { gt_update_irq(cpu, GTIMER_PHYS); } + if ((oldval ^ value) & R_CNTHCTL_ECV_MASK) { + gt_recalc_timer(cpu, GTIMER_PHYS); + } } =20 static void gt_cntvoff_write(CPUARMState *env, const ARMCPRegInfo *ri, --=20 2.47.3 From nobody Sun Jul 26 11:52:32 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1782305236; cv=none; d=zohomail.com; s=zohoarc; b=Tt/TwS+U9zpG1NKncIBR4zCczHV10lHkRuXYyvBzGle/I6EAhp9wWErrY3+3MKhuYoHVGt/Cc2z9JYChzbPkOvj1LcDs3azlocDvPvyAnquxE8JWDA1uVrnmLfpnRhk/EWHOiUR4mUzZqIHMFgE8CnHKUcHTxbYqoVs+YjHsda4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1782305236; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3CUGXCgJ/v0R7ibNkHtL3TbwmGCixpAdTMGatt/6hsY=; b=WbjWK3o8YMyjo0dlXbfDzFzEv7XxynxePz50zUdnPJ36vuTVxqIn9h4AnYc/U90wJ2us77L/zN2mZ/04rXiv/JG4pMIw56wKJovH9u7rEaQZdW/pb5xYD3JBBMs3DqC32rGFV4OX6XolFDH65c1LmPfU3TV7wcGreKoy5AxpZkk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1782305236846569.1385100373199; Wed, 24 Jun 2026 05:47:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wcMzP-0003JP-4x; Wed, 24 Jun 2026 08:45:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wcMz2-00038A-11 for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:38 -0400 Received: from mail-wr1-x42f.google.com ([2a00:1450:4864:20::42f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wcMyx-0006Ml-F0 for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:34 -0400 Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-46caaa805b2so297272f8f.0 for ; Wed, 24 Jun 2026 05:45:30 -0700 (PDT) Received: from draig.lan ([185.124.0.195]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-46c221d93d8sm11792299f8f.23.2026.06.24.05.45.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Jun 2026 05:45:29 -0700 (PDT) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 4E8785F9CD; Wed, 24 Jun 2026 13:45:28 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1782305130; x=1782909930; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=3CUGXCgJ/v0R7ibNkHtL3TbwmGCixpAdTMGatt/6hsY=; b=f6Yl6lyfbi2BfybLNoUeTjeqc10DptNOCMp2pClvFmrhL66ee17ySARaHLVdWdy5E3 ejaUQysVEkHjkVP/e+xKaR1SI3e5bve4UpNA8AE2z4qhx5FUF3zxm6tdaepwj+DQ2uUU 6+s9Z96ChvX4o9LCbsQaG3CQjrNASnysKlPBvmyJXjdANjcYgFtYxZRxLqPEmas6fzlw mfTTEuhPld4QfeWbSVzIn8pkOK/7aXj3UDIzQZj2L44Yk8DgoZpzcY7jBoqqXWfzgn+3 umQxsJeSOkkZoNkCx63OLJMQS0PEwM1wng6wUfGa/UBgsX8CmJlCIpn9NEXfJioipg3L Yd/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782305130; x=1782909930; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=3CUGXCgJ/v0R7ibNkHtL3TbwmGCixpAdTMGatt/6hsY=; b=KpXIO6OoMWJSOURi3jPo63gjOHLLnMBd4w25yZqH9XecS2Sd6K0l+rJxcGVlDYgNXB 4x12O4LUvuTC7nTzlnC4EuVig/8j68w8PEYJv3RZ/aFqptIXdvyZQF88BH03k9DQXdB3 c1ckkWdb6N+P1Zic71+rhaZk8BbITFXgfUVhyWS1tUmlfRTJI77ASck6eZHJMTe2T68v PNinNuSM8PgIHXO3Rd2WYwVmzTax4pXH72Nko9D8QGUP7bZtSQ3pP0czPzMnQnlpP61p sog83/nHs/Ewj+G9QhdIyU9RMttaOflF6rzREPCS0AG4H0A3LD9HfPsSLEAYEDZxTPrL vXPg== X-Gm-Message-State: AOJu0YwcEmHHm4deBrLz8IWfbeoWdnQL64Rtl2j71VMr7fNPHiAo3Ank ACjq5pUfRZXDk5Uj5f17JaO6xJZQLaYXy7P/7C1CLpKeCDwgvYPejKEr5hpdEGZDNhg= X-Gm-Gg: AfdE7cnCX0Xx57qV6tKHVxoP1xiftizIPoZNfbHMir4vLJpr65vh2dFYXAzIH52Jvsq YP1ZKHzD6Mekx4E7rLa1x8gsLY7K60UDoeXzvHnBT8lbP2Sgu57k8jgfR6WUX1SwVJwUyXqbIPC AqiZiF6rgCD6jOZfDKM6h15Xx2fqUivUBXACNpQA84csEDBbXF8MU32B+sZkPtE1NbFS3M/tMXU 67ZiNeH1925gm2Ma7xRwM1xOI9+Y48kDQ730cwXEzaUxdk4KD5xQGgezzN++PldmpTXIj7r3S5T 6k/IgGx5wNbN6ilk5vkFLkjyUVkfpskKQ92cBLGZ7dCbDrIutVr/sYiQkV4fP1wvQpnsxvvdzgE UFf/Yb9shfACAeo6cp6ajaDSrXwnJvEM5VrizJ9U4OuX15Dj1w7zQU+4kBLRacm62FHv70JLu64 VTXxn8posQK8VE X-Received: by 2002:a05:6000:188a:b0:460:3234:4472 with SMTP id ffacd0b85a97d-46c0c90c335mr5299150f8f.40.1782305129863; Wed, 24 Jun 2026 05:45:29 -0700 (PDT) From: =?UTF-8?q?Alex=20Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: Pierrick Bouvier , qemu-arm@nongnu.org, Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Richard Henderson Subject: [PATCH v3 3/6] target/arm: trigger timer recalc on SCR:ECVEN change Date: Wed, 24 Jun 2026 13:45:24 +0100 Message-ID: <20260624124527.1018912-4-alex.bennee@linaro.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260624124527.1018912-1-alex.bennee@linaro.org> References: <20260624124527.1018912-1-alex.bennee@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42f; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x42f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1782305238896158500 Toggling the ECVEN state affects the offset calculated in gt_phys_raw_cnt_offset so we should trigger a re-calculation on its change. Reviewed-by: Richard Henderson Signed-off-by: Alex Benn=C3=A9e --- target/arm/helper.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/target/arm/helper.c b/target/arm/helper.c index 3f0707126b5..9b843857e5d 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -37,6 +37,9 @@ #include "qemu/plugin.h" =20 static void switch_mode(CPUARMState *env, int mode); +#ifndef CONFIG_USER_ONLY +static void gt_recalc_timer(ARMCPU *cpu, int timeridx); +#endif =20 int compare_u64(const void *a, const void *b) { @@ -821,6 +824,12 @@ static void scr_write(CPUARMState *env, const ARMCPReg= Info *ri, uint64_t value) changed =3D env->cp15.scr_el3 ^ value; env->cp15.scr_el3 =3D value; =20 +#ifndef CONFIG_USER_ONLY + if (changed & SCR_ECVEN) { + gt_recalc_timer(cpu, GTIMER_PHYS); + } +#endif + /* * If SCR_EL3.{NS,NSE} changes, i.e. change of security state, * we must invalidate all TLBs below EL3. --=20 2.47.3 From nobody Sun Jul 26 11:52:32 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1782305282; cv=none; d=zohomail.com; s=zohoarc; b=XiQRgBK1Sr6sjE9za1Ze7a2Gx3OYeKQB4ot+M6U9xSBsk1SbTLsNsoX7UK5irJ6pNE7SxiXRn1hjoERCW1+qrPaOpgQejcOXowuVw6SvfLy31NqvI6vIbsragFx7wCxZUci7FFr1CK82LNW8w6lQmPkkhgZeAkAykeGSkrV/mpA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1782305282; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=OxKAmxXDbdUwrSn2RL88EjStXd/xDaL2uq1O996DDgY=; b=FDcVCuvm/6hekBX7pp0eEF080hG3+KKAIDFk46uNS1N6EVnh89l0qDjCEyoT9azVS6akvx1uwvvoBiXeKw0SMA4FyumNCBuSsl3rCMqfrD/aB+gRRS6Kz0vdr6JMQaScWAf8UJWnOMEpJXMMsIXBLvEwOIPpdYvQ81SQCgqQjdI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1782305282013564.9932315439487; Wed, 24 Jun 2026 05:48:02 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wcMzR-0003R2-Ex; Wed, 24 Jun 2026 08:46:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wcMz2-00038B-17 for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:38 -0400 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wcMyy-0006NH-Ud for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:35 -0400 Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-46255b269c2so697143f8f.3 for ; Wed, 24 Jun 2026 05:45:31 -0700 (PDT) Received: from draig.lan ([185.124.0.195]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-46caad603b3sm3590250f8f.7.2026.06.24.05.45.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Jun 2026 05:45:29 -0700 (PDT) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 678935F9D4; Wed, 24 Jun 2026 13:45:28 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1782305130; x=1782909930; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OxKAmxXDbdUwrSn2RL88EjStXd/xDaL2uq1O996DDgY=; b=re31eqDB+iOUd2K9MGWcXVpVxe1SEF7mh2wSvuFL6qy+1hOY4iPmLCyotknHf7yMt1 HY62a+eQ05VK0um/WmNYamrjWhGQ+Uj1N70CG6YXyU4mMxOkVPyhH9RD6Jum+rs8RgNe 4MP3UPPnStTVet6GYLEQp5qRoEm9jMneB03GBfTmE9A+/gcY+TcFnnwq/GK4MXW+vRse gjN/Fak9XciNF7giVZhI20DHmRvP5EdVjnQrXTl9wTa2Iuk8m5q6CbABgPH5Dx5o3jl8 ReECAseU+y5hp1LNcDpaVSszllJeXjugPaJ8GA0NuOrHH30KAF37BlxW8G4B7TyQbHEk OjFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782305130; x=1782909930; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=OxKAmxXDbdUwrSn2RL88EjStXd/xDaL2uq1O996DDgY=; b=j8Y7SRY4rsl433K1C3HG/05TQx9pVXXcwntW8RTSIJO3H32aFVX3/GEreVeL+5Te1x 7ooaCRpSrz5hwotvDrlbIYyt1cyudT17X+09xkC9v9g3ZgyYuqqCL3PUf+jx2EzcJdEF Gt/GRRYAtg1J9RjbWN24ryx9ZusKVGlcckXC7bV5uO7ZP0gCSR8Z+U+iwmK7r86V2Nsy p5Yi4XTJ/Q7xQ38KQQXQw9eOonJUfHnhiSWvPjAzsHxtDGhmUn6IK7noNs1lhqqiwxCC 3Nr2lXrzErEwziwMXbprTwJZnMm8ute6dtNGAB7Gcx9wkraoFVnAz0/mPfrGy6u2QeQz nurQ== X-Gm-Message-State: AOJu0YzFW3bnNu15Vy7xdglpYwo6mPUrG9wAEb/04O/5+xLWc3pBWuH5 RrPDnmLe5TB/XBwLuAJugcfOTlLRSQuS8MfrBVNjjcXjYlKwLAxoBCe6ZkYrfkBoAY0= X-Gm-Gg: AfdE7clHFRQa//tYb7vdc0zj1O0oEJH83nM37pD7CI/eUsm7HM3yuhEyMnqjfXRuQfx w4UFHKjuceGGBluXKNztkZbNMfVTw6ojKSb5mXbDysbJOswwu1ML9Y53W96iNL7Z0cbeUk+4X1V 6dungFAaoZ0deSzQzw3KUyCqg9hjVaoJsa8qwC7rzEuQtp+LFaxcMygYZqg+V2IOa4/GiHR6bwj zTcTqCltD70z0exsQ/sNh6k2xaVMZb+tQgT2t52gVCFEeBKtUp1jehncnjH2f6RoB/sz/NqNUEu HhXlPf/LQr/Adxt9S9M5eVXbZkf4/MTnyye4YMakSy8HnRiABc1JkyY9Yc7kOuRtemmmzkU7dz0 hRVQq3hsUzCirH9dDcJ1oy2BWBK7/GkDGC/oIi+0uN/8NwkAA3ZxVCz95x6xvRIkfUpsOJbbY+M Dz44SIhLAYlx/M X-Received: by 2002:a05:6000:4685:b0:461:a161:8102 with SMTP id ffacd0b85a97d-46c06ad9fcdmr4336513f8f.28.1782305130576; Wed, 24 Jun 2026 05:45:30 -0700 (PDT) From: =?UTF-8?q?Alex=20Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: Pierrick Bouvier , qemu-arm@nongnu.org, Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Richard Henderson Subject: [PATCH v3 4/6] target/arm: gate check on scr_el3 behind ARM_FEATURE_EL3 check Date: Wed, 24 Jun 2026 13:45:25 +0100 Message-ID: <20260624124527.1018912-5-alex.bennee@linaro.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260624124527.1018912-1-alex.bennee@linaro.org> References: <20260624124527.1018912-1-alex.bennee@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42a; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x42a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1782305283151158500 We shouldn't be reading SCR_EL3 unless ARM_FEATURE_EL3 is enabled, if it is then we check SCR_ECVEN allows tweaking the offset. Suggested-by: Richard Henderson Signed-off-by: Alex Benn=C3=A9e Reviewed-by: Richard Henderson --- v2 - don't bail early - if there is no EL3 we still honour CNTHCTL_EL2 --- target/arm/helper.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/target/arm/helper.c b/target/arm/helper.c index 9b843857e5d..4273e3c5395 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -1413,10 +1413,10 @@ void gt_rme_post_el_change(ARMCPU *cpu, void *ignor= ed) =20 static uint64_t gt_phys_raw_cnt_offset(CPUARMState *env) { - if ((env->cp15.scr_el3 & SCR_ECVEN) && - FIELD_EX64(env->cp15.cnthctl_el2, CNTHCTL, ECV) && - arm_is_el2_enabled(env) && - (arm_hcr_el2_eff(env) & (HCR_E2H | HCR_TGE)) !=3D (HCR_E2H | HCR_T= GE)) { + if ((!arm_feature(env, ARM_FEATURE_EL3) || (env->cp15.scr_el3 & SCR_EC= VEN)) + && FIELD_EX64(env->cp15.cnthctl_el2, CNTHCTL, ECV) + && arm_is_el2_enabled(env) + && (arm_hcr_el2_eff(env) & (HCR_E2H | HCR_TGE)) !=3D (HCR_E2H | HC= R_TGE)) { return env->cp15.cntpoff_el2; } return 0; --=20 2.47.3 From nobody Sun Jul 26 11:52:32 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1782305186; cv=none; d=zohomail.com; s=zohoarc; b=QECda4LDj5lsCakxQj9O1bQjLDWDvCQXccKa7zck8/1cNy04USpdYEGnBFor3Qt5oTzu3X1QqH0TqcB906UJgYLzVrwSCP4qsr+lAoCKPtVP2dg+E1hg/zZLGLpsUaqkjdDpwALifwo34qJJm3eTI37lvlzE1QJoDgs+NZtCvjs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1782305186; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=HGo6vKVJEYEOj+aiq6rUlEcybCfYIVgnGO/BD7j/21A=; b=j99R0Gvgyww2/VoPz7pNgBZ3OeeT0D8CU6FCvAe29WStqx/CgTrV+335LsabQewPl/nT3C+xy/FrP/S3VL+dudFKwWlVrVqvV6+7YXWphcDtqKuZ8ZScBamlHbnAUbbItnGpyGKrKxB2XrGWFUL9CuupgSiZkg/fUYIdqpeikhk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1782305185990335.674406566456; Wed, 24 Jun 2026 05:46:25 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wcMzS-0003Tg-Rd; Wed, 24 Jun 2026 08:46:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wcMz7-00038k-CO for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:54 -0400 Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wcMz1-0006O7-Kv for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:39 -0400 Received: by mail-wm1-x334.google.com with SMTP id 5b1f17b1804b1-490b3637b90so6729115e9.3 for ; Wed, 24 Jun 2026 05:45:34 -0700 (PDT) Received: from draig.lan ([185.124.0.195]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-46c1ee01d46sm5782310f8f.13.2026.06.24.05.45.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Jun 2026 05:45:32 -0700 (PDT) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 7C35D5FA5C; Wed, 24 Jun 2026 13:45:28 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1782305133; x=1782909933; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HGo6vKVJEYEOj+aiq6rUlEcybCfYIVgnGO/BD7j/21A=; b=DNOxWnSS5d2NjHCbIuPgOEJ6R9ppgjqi34IcNLxulYOQp1YnfPjlJsubE9LWAdb1OQ w3VHk1JdlokCa5Re0ZyZXaG+l9paAvsT9S/HX4bJJBEr7/G/wNmlEmsgFZ45lssjVcU+ 9vsc2ljGjH5Ujl1z738mklxRDo+r5GtCEVK5aokQW2SHi3vFt8r42FGpTROoutyHrUME g9RM/j0u/hDNEsR05ZbkD60ln1AV36xiQmqk9gI+l0ruQ7Tg6EsXSpH4VKhlKzxSp0Nl LBHQ9VxDgKh81lRI+ps9kW0RG3Z9IpuJJe4/BHKosHldXL+Hewxf7yCiS5nyU6Ny6PPY Nh6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782305133; x=1782909933; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=HGo6vKVJEYEOj+aiq6rUlEcybCfYIVgnGO/BD7j/21A=; b=lzsR7EsrRbJeQvyv6XJEHfDFMYykwaT3llDAsDlyDFXbxi+++6geOZkwDFu+ByY7BD AyMFqLKY1aYDAI4SEfeS4XlbGJapCu/wVnZBNL4N0AQEXePxb1UQffzoEdYNhb/7jPaF V/Lm70nY38d7yJvCUOJha9jyQXKgIzGa8dRurp16avxqdCS9HSDy/WJXX7yl++rh7fwc zAG0Iz1GYvM58qfRag1BsKVGdBVIguzLiNG5PzVzr/QiCA8OvzVSq4Rk7yurJxh4qUyx 4ZDxVPo+UrOsLU55+Tlkkg14FSWWLyJvK4QCBmIXgf3cNNiLznbVvowbqrK2Dd6AEzLO nQsA== X-Gm-Message-State: AOJu0YwviG5lYV3bWxsuJk65jcG0hovTAaYqEEzmYsBEAKYVEplByKC6 ihtebB/FTFUwHcOG0hH9QL4wBpaesci/dz4KsC6k/K6WwzsnHg5m4tqj9cTypk3SJqM= X-Gm-Gg: AfdE7clCDOaHUUbvfwzn3IZZdlKFhg8OrjleTbU3ZftUCYKDvvIRA2tAt9X5o9gkI3/ JhmKhUHkmiXiWFN2lC4zt84JVpXSZtv3bf2dg9xJGUDk+I6L4mLayQBKSf1febjCKRmiTjVcaRo 4Wu9onNe4RUkED957psHUl37ULqVhxBIp4+ZYqH7naAJ9LYjB4zZBssW/zq5lgGWbdz2IQahnJy O81Iq64zZGQPR0xRwOkztU59ByJGeaY6VUyK2aCvSjOV/SIgAPCF13GpzBdkqK4t3B2bmfjTWoF BiNB0lvaJy0iVCH7bFfJfm/f6h6+UCFrnG2r5GXPwrzuCvGsUT0/Ma1lw0KaL5tDjAwzr2KPAux 9ouI1Zdl9ZN07T/b3elgHi2qxzVLlcqizwMdLWXXL872YTojtm2OHlLfPjx432aO7PiE4u5Ysvl 56A6MRQhoj5qeo X-Received: by 2002:a05:600d:8443:20b0:492:1e36:85dd with SMTP id 5b1f17b1804b1-4926088044bmr32603205e9.37.1782305132781; Wed, 24 Jun 2026 05:45:32 -0700 (PDT) From: =?UTF-8?q?Alex=20Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: Pierrick Bouvier , qemu-arm@nongnu.org, Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Richard Henderson Subject: [PATCH v3 5/6] target/arm: trigger timer recalc on HCR:(E2H|TGE) changes Date: Wed, 24 Jun 2026 13:45:26 +0100 Message-ID: <20260624124527.1018912-6-alex.bennee@linaro.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260624124527.1018912-1-alex.bennee@linaro.org> References: <20260624124527.1018912-1-alex.bennee@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::334; envelope-from=alex.bennee@linaro.org; helo=mail-wm1-x334.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1782305186657158500 Toggling the HCR state affects the offset calculated in gt_phys_raw_cnt_offset so we should trigger a re-calculation on its change. Reviewed-by: Richard Henderson Signed-off-by: Alex Benn=C3=A9e --- v2 - defer calling gt_recalc_timer until after we set hcr_el2 --- target/arm/helper.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/target/arm/helper.c b/target/arm/helper.c index 4273e3c5395..b163dc5764f 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -3716,6 +3716,7 @@ static const ARMCPRegInfo v8_aa32_el1_reginfo[] =3D { static void do_hcr_write(CPUARMState *env, uint64_t value, uint64_t valid_= mask) { ARMCPU *cpu =3D env_archcpu(env); + bool hcr_change_timer; =20 if (arm_feature(env, ARM_FEATURE_V8)) { valid_mask |=3D MAKE_64BIT_MASK(0, 34); /* ARMv8.0 */ @@ -3807,6 +3808,10 @@ static void do_hcr_write(CPUARMState *env, uint64_t = value, uint64_t valid_mask) (HCR_VM | HCR_PTW | HCR_DC | HCR_DCT | HCR_FWB | HCR_NV | HCR_NV1)= ) { tlb_flush(CPU(cpu)); } + hcr_change_timer =3D (env->cp15.hcr_el2 ^ value) & + (HCR_E2H | HCR_TGE); + + /* update */ env->cp15.hcr_el2 =3D value; =20 /* @@ -3828,6 +3833,11 @@ static void do_hcr_write(CPUARMState *env, uint64_t = value, uint64_t valid_mask) arm_cpu_update_vinmi(cpu); arm_cpu_update_vfnmi(cpu); } + if (hcr_change_timer) { +#ifndef CONFIG_USER_ONLY + gt_recalc_timer(cpu, GTIMER_PHYS); +#endif + } } =20 static void hcr_write(CPUARMState *env, const ARMCPRegInfo *ri, uint64_t v= alue) --=20 2.47.3 From nobody Sun Jul 26 11:52:32 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=linaro.org ARC-Seal: i=1; a=rsa-sha256; t=1782305186; cv=none; d=zohomail.com; s=zohoarc; b=A6tEaMYjcQNNfE2DgZkuMjGDi6ARszC89dgFb2Uw4XQJ1+mGM9Fk3o329TIer0vDpJ2fzwibKxYDhNk/37UoKLz+4oqf6Y3T5ji1L/hktbtJOfrHhso+TQAo1V4njzfhZ2rQKvfy5hiigAnG9/yX+ip6fZJEYXZvu8mv4eya+L0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1782305186; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=tTyS0BJ6s61nQ8v9xmhKEeGuAQFe2qeJiUF8nIOmW9A=; b=ik80s0bl8NjDtaL7dKFMjiwfgxf5qMWeA/eSpFMyt81rLXn24iylLm7Oq3MS4w+wi0rlv+UbJ8Lib42QH2/af+LkYziSAtBwtohxuONVvghdTSROQSET9bforMxPk+Pcz2c6CKJMTEicAAtSdSe2O53sgCfFayqZm56RgDAo+iw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1782305186719508.5209436754077; Wed, 24 Jun 2026 05:46:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wcMzP-0003Lm-NE; Wed, 24 Jun 2026 08:45:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wcMz5-00038e-IM for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:54 -0400 Received: from mail-wr1-x42a.google.com ([2a00:1450:4864:20::42a]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1wcMz1-0006OE-Ky for qemu-devel@nongnu.org; Wed, 24 Jun 2026 08:45:39 -0400 Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-4629051c9d1so661488f8f.2 for ; Wed, 24 Jun 2026 05:45:34 -0700 (PDT) Received: from draig.lan ([185.124.0.195]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4924923c862sm349690595e9.7.2026.06.24.05.45.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Jun 2026 05:45:32 -0700 (PDT) Received: from draig.lan (localhost [IPv6:::1]) by draig.lan (Postfix) with ESMTP id 922B75FA60; Wed, 24 Jun 2026 13:45:28 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1782305133; x=1782909933; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tTyS0BJ6s61nQ8v9xmhKEeGuAQFe2qeJiUF8nIOmW9A=; b=mDXOB3Z0BnJexJCzAgKVbieibL0iYFzagyTLOZekZMYiCdpvp4uPxlptxQNgbdpGUG Y0eQJ5ctsvw1pn41r180RhJr44z9y5X5fFomfBs/zwNemH5gHTf2c/+U7LiWNsckcioh OQK7OphHsZ/xLIGlPFRCzsBsmXO4nYCj8jeGpyOUns+Yr282tVGbOG2hqMQCF4MKmSOZ 4iG8y8MwRZnb6wgkHRahoRXx4E6eqSOXUG0m9uZk7k/WSaswD0FL49Q2QXtFK9ArBYHk 8wVKA3RzjLxoAhtatFlWKyKKws4RNUF6km80b/iJBwmlzvISMltsHEOcQq9WMJb9tLu1 byqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782305133; x=1782909933; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=tTyS0BJ6s61nQ8v9xmhKEeGuAQFe2qeJiUF8nIOmW9A=; b=pkJSJ8uDj4bMAGJrZaG8dyjQ+fzNlBnjn2mefhqjl/xCyo46hLajkbQL5BQtXVbRcW N9/kqTl3aWzhsC7/hkydq4p4DzsmbNZoHIbhZr96EG7hQF6TW/R+GZRn6rWlX6k9yFOG UUeKmqfGRHW1uk2hSxiQ1cR5lc3feSJNmjT9l8RQ+qpXeFFKlkkrzcCy5IHADdpTJsGG peoEmhS5VoVMhgdAaAy/AvYPbBkqvQsKS6Ya1W0CMwawmDWnTFzjhi0CQeZW9+1kKbKp 1A3JJHV90dqsKxFv2MKkx+9mftiMre3aye9OYPkQkKvLAmJ6mqBF5EeRqxsOrWiu8i8b Lulw== X-Gm-Message-State: AOJu0Yx2hkQBhdndiFJsU0AU2jBNxG5vjsHxsGesQxiIfvBfEJBS7DtH xMWsn8NTQFMQlI3DRjhtcYJU+oSUvecuJdumtv5NNfqL3bBLOadYe1ilQGZHyTHuBFA= X-Gm-Gg: AfdE7cngXJJQWXMe7C9tofXh4YG0bbr9+9IkGvO8laY8rmCHe8w6P4RkQCMRDtjsHru Cs0I/6RmDY/EOChNMu7tGqbSHCwbjMhyWU7HzHvPZicg7wJNfDGEFZKPJaewIBYhhQAxz/+LsvI QhiZyosqlgdhQZ6rBYKRtWhse6j0zwF5qXzjcTYfIt3p8r9Qni8rcTwgaK7v2YPvYJa7kMzkE5f imhsPHW2m4spPYFLlYrFCB+A4Fyi3++wnHbsn5MrT8BDozIRpKSzKDL4ZtjFlwk0Ez9XHqBZgy7 NCU0VdqfyBJ12GYsgKJGx0ELc5YhacvaVkZGaobTwlf84mQrmzxjjE/Eh/rcnNCatWpL3DvZwoZ keEpXqqibwIMbr/SJlbWHUBc57+0a3xY439PH03IUiHLmmoVtccnpcaVUwf/HSGm3ycCvEttRx9 SLG2R1SiuG7Kqqyzbu/zv8hIA= X-Received: by 2002:a05:600c:190b:b0:490:bc46:1a58 with SMTP id 5b1f17b1804b1-49260873583mr44568035e9.18.1782305133147; Wed, 24 Jun 2026 05:45:33 -0700 (PDT) From: =?UTF-8?q?Alex=20Benn=C3=A9e?= To: qemu-devel@nongnu.org Cc: Pierrick Bouvier , qemu-arm@nongnu.org, Peter Maydell , =?UTF-8?q?Alex=20Benn=C3=A9e?= , Richard Henderson Subject: [PATCH v3 6/6] docs/system: add FEAT_ECV_POFF to the emulation list Date: Wed, 24 Jun 2026 13:45:27 +0100 Message-ID: <20260624124527.1018912-7-alex.bennee@linaro.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260624124527.1018912-1-alex.bennee@linaro.org> References: <20260624124527.1018912-1-alex.bennee@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a00:1450:4864:20::42a; envelope-from=alex.bennee@linaro.org; helo=mail-wr1-x42a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @linaro.org) X-ZM-MESSAGEID: 1782305188540158500 We already had this implemented since 2808d3b38a5 (target/arm: Implement FEAT_ECV CNTPOFF_EL2 handling) but it has its own feature name now. Add it to the list. Reviewed-by: Richard Henderson Signed-off-by: Alex Benn=C3=A9e --- docs/system/arm/emulation.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/system/arm/emulation.rst b/docs/system/arm/emulation.rst index a8072ddb671..2faed5c289b 100644 --- a/docs/system/arm/emulation.rst +++ b/docs/system/arm/emulation.rst @@ -60,6 +60,7 @@ the following architecture extensions: - FEAT_E2H0 (Programming of HCR_EL2.E2H) - FEAT_EBF16 (AArch64 Extended BFloat16 instructions) - FEAT_ECV (Enhanced Counter Virtualization) +- FEAT_ECV_POFF (Enhanced Counter Virtualization Physical Offset) - FEAT_EL0 (Support for execution at EL0) - FEAT_EL1 (Support for execution at EL1) - FEAT_EL2 (Support for execution at EL2) --=20 2.47.3