From nobody Tue Feb 10 05:14:28 2026 Delivered-To: importer@patchew.org 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=lists.gnu.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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1580987388775693.163022347342; Thu, 6 Feb 2020 03:09:48 -0800 (PST) Received: from localhost ([::1]:36098 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1izf2Z-0005kx-Jf for importer@patchew.org; Thu, 06 Feb 2020 06:09:47 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:50234) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1izeoe-0003Ss-9h for qemu-devel@nongnu.org; Thu, 06 Feb 2020 05:55:26 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1izeoc-0008Rz-8u for qemu-devel@nongnu.org; Thu, 06 Feb 2020 05:55:24 -0500 Received: from mail-wr1-x441.google.com ([2a00:1450:4864:20::441]:39499) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1izeoa-0008II-BY for qemu-devel@nongnu.org; Thu, 06 Feb 2020 05:55:22 -0500 Received: by mail-wr1-x441.google.com with SMTP id y11so6578298wrt.6 for ; Thu, 06 Feb 2020 02:55:20 -0800 (PST) Received: from cloudburst.c.hoisthospitality.com ([135.196.99.211]) by smtp.gmail.com with ESMTPSA id m21sm3364995wmi.27.2020.02.06.02.55.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 06 Feb 2020 02:55:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=rHwW2MijaLV3MYZXc94ajn3WaeSF6QeB769XQ1wido8=; b=U/vGI36ZJxez1Xp5AtXmAgmNMwFPq5MvVL14xaoHRiGc0zxTZchO4DYR6uGthZ28wu 0zb+HcWb7fS+vLMHsOMc4JWpRI9YZAEiUaL2+k1z8Z1iX+D3h/sG5oBYL3VHvdsm4ZWA /LlSfaXS+OQCPIgIhfWIxBARnEL+qs+VUqOUimWDcpCrLkP5G2qrvO5cTrXpOfsWqLvk Bsrm5cKmPj9mEdUcPZk5GjRP5NFyO1AyhFxHS3wibWhRottv8tORHMF999NHCsm6o3Dn Q+7cTNQY8eYUcymZ02x9FWtfDH9RwTAD/WhjdURQ+zAofXbJr3cco57MvtUfgcERzOi/ CJ8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=rHwW2MijaLV3MYZXc94ajn3WaeSF6QeB769XQ1wido8=; b=EB+Rg58eXzq5ZEr2FWQtdLbUqAEO2BHh/YgijT2RCEoIIDHzzo5+k2cZT6eD86cYXJ MxB7tKk6bMwCrHhJ9acLfN9UGOcOLGUI1PFhGTnLw8MyVGKOaO3y45+t9tTrNGDOhf1k x/6N57kTZUyel/AD3W67+pmBCIvLqNLSIe+pqhaGAOlfcdBwhpzpUVTunWftRZM5emAJ muD4m8yE/L3rp9O8fz3SVTZFMmUQUlu9upalIgrdYagEw22hRF/5RfTs59WmNPbQjkVG qh7o/9qQRdoWTofNEF97tW4jc672AVo1PasQbcD4+Pw/U0f7GugMlGt5x2YHc8vxYdZz +ssQ== X-Gm-Message-State: APjAAAVvt1JRs6+Ok5W8asQA/Zmt4gOp0E7JLgM24RmGm0hTV9TXl5+C LHv69WCZfd8UEmzF5hTR3fcmv+VpAGF/6w== X-Google-Smtp-Source: APXvYqxv25c9vxHmP7dzbs+bmhsHjamKFFdCNlBPgYeCLzw0NaqwefjADwYO8uTaWQO6ZcYcYlkKjA== X-Received: by 2002:adf:f586:: with SMTP id f6mr3123651wro.46.1580986519001; Thu, 06 Feb 2020 02:55:19 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v7 34/41] target/arm: check TGE and E2H flags for EL0 pauth traps Date: Thu, 6 Feb 2020 10:54:41 +0000 Message-Id: <20200206105448.4726-35-richard.henderson@linaro.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200206105448.4726-1-richard.henderson@linaro.org> References: <20200206105448.4726-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::441 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, =?UTF-8?q?Alex=20Benn=C3=A9e?= Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @linaro.org) From: Alex Benn=C3=A9e According to ARM ARM we should only trap from the EL1&0 regime. Tested-by: Alex Benn=C3=A9e Reviewed-by: Peter Maydell Signed-off-by: Alex Benn=C3=A9e Signed-off-by: Richard Henderson --- target/arm/pauth_helper.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/target/arm/pauth_helper.c b/target/arm/pauth_helper.c index e0c401c4a9..9746e32bf8 100644 --- a/target/arm/pauth_helper.c +++ b/target/arm/pauth_helper.c @@ -371,7 +371,10 @@ static void pauth_check_trap(CPUARMState *env, int el,= uintptr_t ra) if (el < 2 && arm_feature(env, ARM_FEATURE_EL2)) { uint64_t hcr =3D arm_hcr_el2_eff(env); bool trap =3D !(hcr & HCR_API); - /* FIXME: ARMv8.1-VHE: trap only applies to EL1&0 regime. */ + if (el =3D=3D 0) { + /* Trap only applies to EL1&0 regime. */ + trap &=3D (hcr & (HCR_E2H | HCR_TGE)) !=3D (HCR_E2H | HCR_TGE); + } /* FIXME: ARMv8.3-NV: HCR_NV trap takes precedence for ERETA[AB]. = */ if (trap) { pauth_trap(env, 2, ra); --=20 2.20.1