From nobody Sun Dec 14 06:34:29 2025 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=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1762908780; cv=none; d=zohomail.com; s=zohoarc; b=nnANQ7jN932LB3FzjnHTu5NZGLz8Nq4ISAfWOo6mf9HUa9WOIB00PhsHhzAuaezPZK2hfMnn/N4IXX++lJixQgwsSSBfTMnVvumnuMnrIWzEEGDrQ81RHNNcCjP8h6oFOSnCOewPe63jN7yP/eRD/7tI1sk1EbYw0Cxf1Jyqysk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1762908780; 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=X7xBSB+pMgbppGGcunAU3mgJo+IlSAXE/W29CJIZftg=; b=Nmp3R146HPn/+xjU8tp49zZ6P5ENgHduzyCcOTnWqDtmjmHTRVZLyCvUTfvi1ht37nIN7ql7IAMYjlCAP1mtbpj6LqtFqkgD/zkR4uXLx4vKf0BAAi/IfxaaMitBeZ4k1pHKazlpBP7q4wvzkQv0Usb6HronCnYif1J/aldKlzI= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1762908780401157.947124377058; Tue, 11 Nov 2025 16:53:00 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vIz56-0004R8-6p; Tue, 11 Nov 2025 19:51:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vIz51-0004N6-Dx for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:23 -0500 Received: from mail-qv1-xf29.google.com ([2607:f8b0:4864:20::f29]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vIz4y-0005o1-FR for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:23 -0500 Received: by mail-qv1-xf29.google.com with SMTP id 6a1803df08f44-882390f7952so2941456d6.3 for ; Tue, 11 Nov 2025 16:51:19 -0800 (PST) Received: from [10.0.0.22] ([185.213.193.149]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8823892a79fsm81445096d6.4.2025.11.11.16.51.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Nov 2025 16:51:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1762908679; x=1763513479; darn=nongnu.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=X7xBSB+pMgbppGGcunAU3mgJo+IlSAXE/W29CJIZftg=; b=Qg6v7nbuS47pswlzsi+sHQKbI70f5f9f2vxPSh2n6RDe8fD7DOTVqVo0WONPledWcC 4D9lg/cINScAeegBhd22S1AHjGzdsUysaSCAMQ+pbt6S//pbpamFdhelrcoSgV9ljvTG hXpZ08T99p0HBVnMBm+Mcq5Ld2x4nRhYIQGtCK6zMlllk5OPFPkrfgRj1jfYfZp7w1Pi dO1mMQULDHC5Ncmj8PXNZ09NdLkDVKz2cJrHlmByH3xEECxHMxVegMZ124UwO6XTwVXg I390226h0mQ2UDchGuhwxkN/dKMtYbWrJPv5+if32ImKCmIHNIguWWc3jlAY9lA8R1LS bAVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762908679; x=1763513479; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=X7xBSB+pMgbppGGcunAU3mgJo+IlSAXE/W29CJIZftg=; b=T7gH51Bjl8U4c8z0kH+m6sMvrCpdoeSxI78axslaWpSicbXgQJpK3pZDWWTDZwa1en MR9X9b/CTHOcwAd0jQ2AAPY6gbMWRLTtDV9h97fG/4DT6i8upIYmwAbncIXepNfvW2n3 WHovJ3SwdbDGxA/qSpn3IYhz0RFes3hd3H5HOU5uSsrTCS80jk04MMcMEq55m3lgveBq 6ZxKLCii7iTMBRHVXRaRtRRVUeqwxI1n5azcHK6tmMm/KE1qq1bndy/DadCgW2WRGqAC FTEU9df/I14/F2nsATKdZ9nIqqEQ0L8YQYLF3ee0Rt/EaxGl+s5iCc3mejvGN3ie5loL +SQg== X-Gm-Message-State: AOJu0YwOiVNlY1DBr7J4KKCv+JgMKyBHTig6dibRvwOfuGJXcQQf1Los lYyYvzivtOyT7DvMH2PaHR/bwWGdfLd1Pw2CI5U9bGdYgyh2O5I+PxPS X-Gm-Gg: ASbGnctPo5ZwL5anplaiCEaZyV+OTYqhS2eAK1Q0MV9yma3wrRVz1nihMf0dlKPGTfO EZv2avfZqFxXfaJqyTf5w/jre/aMRtH3uUPIwt3Cgz7Ebz3daWVPStgePiBCDaURRDjsWxo70tU AufkB0yCm3iRF/QUdoCCaGDDpA+FEJxL2e55OOIwt9u5gp7TovK+9exyvsJgJeGAILHzMs1dnPO TBJ/RfsCIKqPU9kiHkuXCfovOcRQDktOdm9FgKe0DAfSoGYcFTttqEfa+Cd+kBQISerlL3kVDll YirTRNESCqH0egh0OxJnJMaXZVkreIeW69N36opMNCpzEiqky+sDc5vTazS5XRcwMFR+bul9pIX VByaNs6PmE9/x9Kg7mfRijN2B8DOYMEzlb3YwTPomJ1ZGqD6+S83CeqHO6iREmpRXsEuhGcKDm6 EWiBZp8eiA X-Google-Smtp-Source: AGHT+IGyBmMScafPAT1oRAldKXh5lhhxZRTw/ZrIFENb7Bz2nho9FEF7+KJg0W8zOwkwf1aRI7f4iA== X-Received: by 2002:a05:6214:202c:b0:882:6d42:53a7 with SMTP id 6a1803df08f44-88271a221c7mr23581826d6.40.1762908678866; Tue, 11 Nov 2025 16:51:18 -0800 (PST) From: Gabriel Brookman Date: Tue, 11 Nov 2025 19:50:50 -0500 Subject: [PATCH RFC 1/5] target/arm: explicitly disable MTE4 for max MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251111-feat-mte4-v1-1-72ef5cf276f9@gmail.com> References: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> In-Reply-To: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> To: qemu-devel@nongnu.org Cc: Peter Maydell , Gustavo Romero , qemu-arm@nongnu.org, Gabriel Brookman X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1762908676; l=1511; i=brookmangabriel@gmail.com; s=20251009; h=from:subject:message-id; bh=XGiHb/C0NusSmxgmrJIRVRwNagLzEUYEbrI5ObCYhAo=; b=vNVg3HOCbIitlYuqqVZb4QBG8VF9TmVXKXkJ+40F+VXQFquSYRafgBUQIg54MHCJX/jagCgqw w4PTpltCi64CGKLLCXTl7Kt1L6n+ds3B3fT5pIb6snpJACiN0z4ODJL X-Developer-Key: i=brookmangabriel@gmail.com; a=ed25519; pk=m9TtPDal6WzoHNnQiHHKf8dTrv3DUCPUUTujuo8vNrw= 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; Received-SPF: pass client-ip=2607:f8b0:4864:20::f29; envelope-from=brookmangabriel@gmail.com; helo=mail-qv1-xf29.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, FREEMAIL_FROM=0.001, 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: 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 @gmail.com) X-ZM-MESSAGEID: 1762908781634158500 Previously, the bits used to advertise the various MTE4 features were not explicitly set for -cpu max. This commit calls out these bits and explicitly unsets them. At the end of the patch series, a second commit will explicitly set all of them. Signed-off-by: Gabriel Brookman --- target/arm/tcg/cpu64.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/target/arm/tcg/cpu64.c b/target/arm/tcg/cpu64.c index 6871956382..6688b78bb8 100644 --- a/target/arm/tcg/cpu64.c +++ b/target/arm/tcg/cpu64.c @@ -1281,8 +1281,16 @@ void aarch64_max_tcg_initfn(Object *obj) t =3D FIELD_DP64(t, ID_AA64PFR1, CSV2_FRAC, 0); /* FEAT_CSV2_3 */ t =3D FIELD_DP64(t, ID_AA64PFR1, NMI, 1); /* FEAT_NMI */ t =3D FIELD_DP64(t, ID_AA64PFR1, GCS, 1); /* FEAT_GCS */ + t =3D FIELD_DP64(t, ID_AA64PFR1, + MTEX, 0); /* FEAT_MTE_NO_ADDRESS_TAGS + FEAT_MTE_CANONICA= L_TAGS */ SET_IDREG(isar, ID_AA64PFR1, t); =20 + t =3D GET_IDREG(isar, ID_AA64PFR2); + t =3D FIELD_DP64(t, ID_AA64PFR2, MTEFAR, 0); /* FEAT_MTE_TAGGED_FAR= */ + t =3D FIELD_DP64(t, ID_AA64PFR2, MTESTOREONLY, 0); /* FEAT_MTE_STOR= E_ONLY */ + t =3D FIELD_DP64(t, ID_AA64PFR2, MTEPERM, 0); /* FEAT_MTE_PERM */ + SET_IDREG(isar, ID_AA64PFR2, t); + t =3D GET_IDREG(isar, ID_AA64MMFR0); t =3D FIELD_DP64(t, ID_AA64MMFR0, PARANGE, 6); /* FEAT_LPA: 52 bits */ t =3D FIELD_DP64(t, ID_AA64MMFR0, TGRAN16, 1); /* 16k pages supporte= d */ --=20 2.51.2 From nobody Sun Dec 14 06:34:29 2025 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=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1762908718; cv=none; d=zohomail.com; s=zohoarc; b=CW930merQtxI2OU1jmwq6Yo5SMnXIDlkm+OBA8VGzaEp0j2WtYLsqMdn3QQoPvWPunhzU8hE/mc1QhwBR7n71r/MUs0EeHSDcYaerRG2aGFdbtJvj3cpb4xw+7hGxnX6qckY3KNDkcP3aNbuhirbNF9Ax948VmEsJN54GICVEwc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1762908718; 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=c0ooQgjp8fdCE0I1tUppq0fDnhYl978CXRbViAmWVfc=; b=hKLbC7HQotx+hi3AQgiVuL/OHIpse+7bBzedRkYMqnaxZz4XhW1Nafxa+LdOK1EEF8FGGX4rMJ/YnqVFt/KKoqV7O7iDdJPm7sEAvBXrfxig030jATcTaIL55nxi6kQq3ZpadjBRo1MdGgBE3HZfvPJfX8T+lBJVBEr3QTcttX0= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 176290871890960.90601585902891; Tue, 11 Nov 2025 16:51:58 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vIz54-0004PY-FC; Tue, 11 Nov 2025 19:51:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vIz51-0004N7-Ei for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:23 -0500 Received: from mail-qv1-xf2d.google.com ([2607:f8b0:4864:20::f2d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vIz4y-0005oG-O2 for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:23 -0500 Received: by mail-qv1-xf2d.google.com with SMTP id 6a1803df08f44-88246401c9eso2792356d6.1 for ; Tue, 11 Nov 2025 16:51:20 -0800 (PST) Received: from [10.0.0.22] ([185.213.193.149]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8823892a79fsm81445096d6.4.2025.11.11.16.51.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Nov 2025 16:51:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1762908680; x=1763513480; darn=nongnu.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=c0ooQgjp8fdCE0I1tUppq0fDnhYl978CXRbViAmWVfc=; b=DGWCaTYqY2WFcOXLpcd9n8xDLxNF7A/bIjI3Jboh3iX3CaWKnnM78/89nC12dsC+DG WKaz3xdPquslvEGrl+4lhOpES7Ogb9MzWZH18dXZv9k3Wxb4xiRqc+8vmw+mQJu/fVe/ 32t08hahbCkXk2quPfehZgg2u9nkJGhHKV6Ok+9BNEJZWRY23vqE98UU81ATURAYbnW9 vlnuCAvPm2nJb0lR7z6yjyiu5kdNS6uQNiUtlY/naR4sUwwH7f/SI5nbm8zQTkmaJFfE PM6WIl5SNHFA3boAoFty2j0gRM8AlghaVW+sD7bsafg/b6oycGttGQ4N4tj2M8akhlER Yp6A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762908680; x=1763513480; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=c0ooQgjp8fdCE0I1tUppq0fDnhYl978CXRbViAmWVfc=; b=dhx7oaHExPXKc/NmA3U+6x8KVI2OKHQ8CsdTQJ55LCqrFhNbsjS8arrGg2OQDRCO6J eqYapTLn4zq3E3CPddB0aU89Ebp2lBeW7nXwBCpMK46887aWTF1gIx0SwiRYETnjsAFq 58EG3+qaWyfQusXS0O8vVj4bO5Tw1FYsET9FgvSK8F6zLlEiIEA2ZJylUzGoWGMGK4qd baTyLKuWQm/pwgTmZeZAbODB5z7Qrj/yJruyZJ2VwsFX5tM9JRaboye/3TiqzEnwyMqQ Z1Dntz8+kKUKlhw583btuwx52QhLW/WDhgEw95y8WWnv48PH2AEySH0yIHqcHm6GjemW j1yw== X-Gm-Message-State: AOJu0YyRh9YAgXfjsby1hL32rBnINfQvCJVlsd8vh4U5kVOgpgWH55ko b0kWYBnqi6PwtFkrOVYQLgKiKB+rHZ5GPw7A/CMs6Pd1mjWDRmwgavkS X-Gm-Gg: ASbGnctRDUbGzij6pAjb/tQoCRrHfN6NxSbI2fMLxwnbGYrgPXmSRm/j0po/mxb9Zd9 3cMtcfWnkvu+bbW0cds/RmCbYatoN4v8qcKSkVX4sCqzC87Er/r7vk7o9fhZd5y/C/nmpE8dKMy f2dnz45iuyVDSrEMZj2HqFyWSTtmCwiztxjAzNr/9a+M+N2s+1KrdkPywnU7dCw6jB7KHRK3cFU WKILFwR+FRjOyj5tDgZwYt5sc7m8tb7xV0ZqL9viCiNRmR4QCdf3XhJGlUVdfA/JK8ac2315V+5 hZT8UOQSFUeIb5cg2hU0UESLhDuuLqM+du9iWN164v/Jm8E4ER/h5VobFS9xpiVW8of3Qkku+AV +PSw8yVzosGNjRUwJfveKN9UPUbcZ7NWskINIvg+vLoHJ9PcflCxcFD22OS0QPfVi0e8W9O8LPU E2WULTl+jF X-Google-Smtp-Source: AGHT+IFyaIkQIk4EQs2k8HLLYluYdQCYUjI7E0j9lWNYoa83kInyCJapmuPentymHznXlaH37JMcRQ== X-Received: by 2002:a05:6214:dad:b0:87c:1889:6a7f with SMTP id 6a1803df08f44-882718f018emr20220726d6.5.1762908679699; Tue, 11 Nov 2025 16:51:19 -0800 (PST) From: Gabriel Brookman Date: Tue, 11 Nov 2025 19:50:51 -0500 Subject: [PATCH RFC 2/5] tests/tcg: added test for MTE FAR MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251111-feat-mte4-v1-2-72ef5cf276f9@gmail.com> References: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> In-Reply-To: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> To: qemu-devel@nongnu.org Cc: Peter Maydell , Gustavo Romero , qemu-arm@nongnu.org, Gabriel Brookman X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1762908676; l=2196; i=brookmangabriel@gmail.com; s=20251009; h=from:subject:message-id; bh=HOnmmRUvb4FXQDKxZ2OUkT6fS8G/aYsXOfMXqQ+VIZo=; b=+NTpZ/ubOyuqPZ3Lf2MO8vjfoQLpKdFwEV12/qTnnhGGwhNW6wvuje7o4mrH4RWjIVhl1/+rr 83y0NWXN+sxDNvVKFC+qkflI/JWG6+m0yQbl64eWQsjtqzKCHJoZFwO X-Developer-Key: i=brookmangabriel@gmail.com; a=ed25519; pk=m9TtPDal6WzoHNnQiHHKf8dTrv3DUCPUUTujuo8vNrw= 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; Received-SPF: pass client-ip=2607:f8b0:4864:20::f2d; envelope-from=brookmangabriel@gmail.com; helo=mail-qv1-xf2d.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, FREEMAIL_FROM=0.001, 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: 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 @gmail.com) X-ZM-MESSAGEID: 1762908721520153000 This functionality was previously enabled but not advertised or tested. This commit adds a new test, mte-9, that tests the code for proper full-address reporting. Signed-off-by: Gabriel Brookman --- tests/tcg/aarch64/Makefile.target | 2 +- tests/tcg/aarch64/mte-9.c | 48 +++++++++++++++++++++++++++++++++++= ++++ 2 files changed, 49 insertions(+), 1 deletion(-) diff --git a/tests/tcg/aarch64/Makefile.target b/tests/tcg/aarch64/Makefile= .target index 9fa8687453..b491cfb5e1 100644 --- a/tests/tcg/aarch64/Makefile.target +++ b/tests/tcg/aarch64/Makefile.target @@ -64,7 +64,7 @@ AARCH64_TESTS +=3D bti-2 =20 # MTE Tests ifneq ($(CROSS_CC_HAS_ARMV8_MTE),) -AARCH64_TESTS +=3D mte-1 mte-2 mte-3 mte-4 mte-5 mte-6 mte-7 mte-8 +AARCH64_TESTS +=3D mte-1 mte-2 mte-3 mte-4 mte-5 mte-6 mte-7 mte-8 mte-9 mte-%: CFLAGS +=3D $(CROSS_CC_HAS_ARMV8_MTE) endif =20 diff --git a/tests/tcg/aarch64/mte-9.c b/tests/tcg/aarch64/mte-9.c new file mode 100644 index 0000000000..9626a90c13 --- /dev/null +++ b/tests/tcg/aarch64/mte-9.c @@ -0,0 +1,48 @@ +/* + * Memory tagging, full-address reporting. + * + * Copyright (c) 2021 Linaro Ltd + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#include "mte.h" + +static void *faulting_ptr; + +void pass(int sig, siginfo_t *info, void *uc) +{ + assert(faulting_ptr =3D=3D info->si_addr); + exit(0); +} + +int main(int ac, char **av) +{ + struct sigaction sa; + int *p0, *p1, *p2; + long excl =3D 1; + + enable_mte(PR_MTE_TCF_SYNC); + p0 =3D alloc_mte_mem(sizeof(*p0)); + + /* Create two differently tagged pointers. */ + asm("irg %0,%1,%2" : "=3Dr"(p1) : "r"(p0), "r"(excl)); + asm("gmi %0,%1,%0" : "+r"(excl) : "r" (p1)); + assert(excl !=3D 1); + asm("irg %0,%1,%2" : "=3Dr"(p2) : "r"(p0), "r"(excl)); + assert(p1 !=3D p2); + + /* Store the tag from the first pointer. */ + asm("stg %0, [%0]" : : "r"(p1)); + + *p1 =3D 0; + + memset(&sa, 0, sizeof(sa)); + sa.sa_sigaction =3D pass; + sa.sa_flags =3D SA_SIGINFO; + sigaction(SIGSEGV, &sa, NULL); + + faulting_ptr =3D p2; + *p2 =3D 0; + + abort(); +} --=20 2.51.2 From nobody Sun Dec 14 06:34:29 2025 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=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1762908794; cv=none; d=zohomail.com; s=zohoarc; b=TO0H4INR7P3xdWnJFVT6YjQirGjPOClcHiypekl6Vcr0YfRfK6J0XtvZhCcp8y36IY3qV6NBcqUYDHPC5wtzRFdT616YV0Or+0LOUGbtLMtlNv2gn/hOJILqj1BV9JWBdH8/Fmg7aCJ0vLjl4cwZPHrGJhwV15Rtx5dA1+3RuGc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1762908794; 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=fh2aCIWghB8nM6pqcbl6fjKLvG1B2Pt65byvOBa9TDI=; b=kij5yE4FaLgdAHe74J2UkHR+WQ/mozw6YtAopgjaMLexhyfHiGXWBxX0s6MKGVpCFElHNWWyIK/qbk8hcudWDkayDXXoGKdD15QqLV5AIDmM+0xLcTiS89dn7ds1PoHHE4B/rgj0qlw5biJDv7jGu09SKm0/Is4j7kvm6ocCApU= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 176290879441479.04019116240306; Tue, 11 Nov 2025 16:53:14 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vIz56-0004R5-1e; Tue, 11 Nov 2025 19:51:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vIz51-0004NE-NV for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:23 -0500 Received: from mail-qv1-xf35.google.com ([2607:f8b0:4864:20::f35]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vIz4z-0005oW-Ss for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:23 -0500 Received: by mail-qv1-xf35.google.com with SMTP id 6a1803df08f44-88245cc8c92so2104986d6.0 for ; Tue, 11 Nov 2025 16:51:21 -0800 (PST) Received: from [10.0.0.22] ([185.213.193.149]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8823892a79fsm81445096d6.4.2025.11.11.16.51.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Nov 2025 16:51:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1762908681; x=1763513481; darn=nongnu.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=fh2aCIWghB8nM6pqcbl6fjKLvG1B2Pt65byvOBa9TDI=; b=ARCqhY95axei1h4oVn5t0MAN85DANYGP/1c2qBLdlBQLFLQ0bdYh/u8a20m2J0URua JexpO+fVlA9PVMgQDLtkazSKX3r0g0uhWcqHNZKejYmN7z+Pk9VmDhx7ke0wA/oZoccc 2zyoTqnqzsgbdQ1ro4v48gV8bRaI1QXOVZzlCuWKlCwoCGMWGcFspp04emaFmEiIRz7L 7nJNIXYDvMc/snaGKbAJ+uXU8qVLOiUXGSxeDuA3VWEnMvCQA627ZUu6DxIv9oUk+jwl RFSyp86RVZ1+WZVdQt1AhbgRYenCEPoTqYKxg/UntyU36xHK1cDo+iszA6UiR2c5SLF6 Fmxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762908681; x=1763513481; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=fh2aCIWghB8nM6pqcbl6fjKLvG1B2Pt65byvOBa9TDI=; b=wYecs6qdkcSF8RA8yT0UnhNdpilnKhj63SmtpOFNjV++0q7Chos9kE67N5f1kpNx3H pGR7tjamPGKKrm/gN0vK8mfP5oJiF1yow5r73M4cMCsWkWw+IE6R3/ho2vjw8KQbkZsJ haWqifCVCNTmMXtpcW22qnLaWVfSzQRZS7Sw4SZT1Tvh2GF5AeELNzNN58psz+QXn0Ev 1CngNdSr0cCsH7kxHIHetnk/N4jhh7tgIJS5yylHYOva9FTbweUiBFweXAIDFIgqWqaC 7z3qxiOPuuwnjGxotrFEi/xlwWVCfvLLHRVfCgzEp6MwSYnkvDL2SjOS85ba6TdBeI5c KlrQ== X-Gm-Message-State: AOJu0YwU3zGYqNcAypVHJ12Oc2F3SEtTYOjbyCNCwdxm4ZKQprkXFXfp fSSnaMPYawVnEN9Q+Bp3eQ/IWeT6OV00lzH00JHZg2Fywlesl5hewYKm X-Gm-Gg: ASbGncvCeagto/t60IGZ1UWnJXSVG6sUGLysHc2d8WGIJmjRxGbq/IFM8btGFixMUhu X2oMkthoGamiIR+7Dhm77Ikv38G7ug4auZfCEBfOKPNSUYT6x9lnurUXk7vsu7jHTVSidKoGuO7 XX3HYWV+QIAlTSU3XypdYjxf7LsRTed9xbt5pTGtPBnL8dOtAw1sUySzCQttjY/HrvYH0gW7T8h DiKtrPUZixUYBFlljOXNSB/RGVpVlrZp6vWftc4EKe+yUvvB14az6L7+reC8VgiPiHFYXE502xp TFYSOatxsco9A4t/5z7aKOoEjCvcZe9ofz/w65I79LCCy4Givd3U73vh4zOAdHvak4qbKR764Ho ch0AoxXeI2+/GXDgBdFLg0DoF0yDpfMQ1d4pw3P5NLB5VffjpAZ18RbLkLrmguPRbz+qngD81Yp 6bQ4wTitmL X-Google-Smtp-Source: AGHT+IHEQZlNMbOZeyg6L1zEC4NyBGv2EqktTdunIX7nPHcQZJ7X1voTjiYfcgNKTwFqJswcpY5trA== X-Received: by 2002:a05:6214:d4c:b0:87c:1d41:575d with SMTP id 6a1803df08f44-882718bae09mr18412996d6.3.1762908680834; Tue, 11 Nov 2025 16:51:20 -0800 (PST) From: Gabriel Brookman Date: Tue, 11 Nov 2025 19:50:52 -0500 Subject: [PATCH RFC 3/5] target/arm: add TCSO bitmasks to SCTLR MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251111-feat-mte4-v1-3-72ef5cf276f9@gmail.com> References: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> In-Reply-To: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> To: qemu-devel@nongnu.org Cc: Peter Maydell , Gustavo Romero , qemu-arm@nongnu.org, Gabriel Brookman X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1762908676; l=1752; i=brookmangabriel@gmail.com; s=20251009; h=from:subject:message-id; bh=diZ9mUz1IQ4dvWZ2C/1aTcAm0Esme9Dx1H9yg3kKA/4=; b=r5fa684PEoey00HtYsRByLb2cVizA5nbHy8Q4vu6XYIGVFe8qgMYiC0AYV8T/af9UM8352pwI wVRcIPXgtn7DbicNIrrCMFYpQthtQ0h6Mr+MNmZmyC4qk1tmswk9QsZ X-Developer-Key: i=brookmangabriel@gmail.com; a=ed25519; pk=m9TtPDal6WzoHNnQiHHKf8dTrv3DUCPUUTujuo8vNrw= 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; Received-SPF: pass client-ip=2607:f8b0:4864:20::f35; envelope-from=brookmangabriel@gmail.com; helo=mail-qv1-xf35.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, FREEMAIL_FROM=0.001, 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: 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 @gmail.com) X-ZM-MESSAGEID: 1762908796195158500 These are the bitmasks used to control the FEAT_MTE_STORE_ONLY feature. They are now named and setting these fields of SCTLR is ignored if MTE is disabled, as per convention. Signed-off-by: Gabriel Brookman --- target/arm/cpu.h | 2 ++ target/arm/helper.c | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/target/arm/cpu.h b/target/arm/cpu.h index 39f2b2e54d..2c7c76777f 100644 --- a/target/arm/cpu.h +++ b/target/arm/cpu.h @@ -1424,6 +1424,8 @@ void pmu_init(ARMCPU *cpu); #define SCTLR_EnAS0 (1ULL << 55) /* FEAT_LS64_ACCDATA */ #define SCTLR_EnALS (1ULL << 56) /* FEAT_LS64 */ #define SCTLR_EPAN (1ULL << 57) /* FEAT_PAN3 */ +#define SCTLR_TSCO0 (1ULL << 58) /* FEAT_MTE_STORE_ONLY */ +#define SCTLR_TSCO (1ULL << 59) /* FEAT_MTE_STORE_ONLY */ #define SCTLR_EnTP2 (1ULL << 60) /* FEAT_SME */ #define SCTLR_NMI (1ULL << 61) /* FEAT_NMI */ #define SCTLR_SPINTMASK (1ULL << 62) /* FEAT_NMI */ diff --git a/target/arm/helper.c b/target/arm/helper.c index 27ebc6f29b..32fbb2e25d 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -3364,10 +3364,10 @@ static void sctlr_write(CPUARMState *env, const ARM= CPRegInfo *ri, =20 if (ri->state =3D=3D ARM_CP_STATE_AA64 && !cpu_isar_feature(aa64_mte, = cpu)) { if (ri->opc1 =3D=3D 6) { /* SCTLR_EL3 */ - value &=3D ~(SCTLR_ITFSB | SCTLR_TCF | SCTLR_ATA); + value &=3D ~(SCTLR_ITFSB | SCTLR_TCF | SCTLR_ATA | SCTLR_TSCO); } else { value &=3D ~(SCTLR_ITFSB | SCTLR_TCF0 | SCTLR_TCF | - SCTLR_ATA0 | SCTLR_ATA); + SCTLR_ATA0 | SCTLR_ATA | SCTLR_TSCO | SCTLR_TSCO0); } } =20 --=20 2.51.2 From nobody Sun Dec 14 06:34:29 2025 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=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1762908772; cv=none; d=zohomail.com; s=zohoarc; b=E/IqxhzIKQla9b2zLRYM/+siv9etLEzxbDOJU5a5EpgHXIvKxcPJXcyOm1EYykcherZo54pbILfcUctfwO7ryVaw5kXPuatAd6vsGB4RRxJuvA05tPuR78spJUTw18F1KcE45wmpGW+p7HfWrJUr5mt8i1/DadhQnhd4RtMyvCw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1762908772; 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=CaohwLtIR7C9243DMpjNQ1vbzBgBz3c5xAC0e8E0Q+0=; b=K3xOCIz2UYtDCUsCuCYuc04Oj/xpNyq6ea8k1NYtc4h+JMuo8Y8zQZAgGbROa6w/SzzeNTcZSMfCVsDjBLENYbdE2y45YmBJPJ4Hlr9B4a4mKG2RBFrmIywKOfeMMvngHnMRexwfHb9bKbJmWFDh7i13qmulB58S77+so8Bh+bg= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1762908772055437.2771682543655; Tue, 11 Nov 2025 16:52:52 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vIz55-0004Q9-3F; Tue, 11 Nov 2025 19:51:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vIz52-0004OU-MQ for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:24 -0500 Received: from mail-qv1-xf34.google.com ([2607:f8b0:4864:20::f34]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vIz50-0005ox-UX for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:24 -0500 Received: by mail-qv1-xf34.google.com with SMTP id 6a1803df08f44-88267973e5cso1732986d6.3 for ; Tue, 11 Nov 2025 16:51:22 -0800 (PST) Received: from [10.0.0.22] ([185.213.193.149]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8823892a79fsm81445096d6.4.2025.11.11.16.51.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Nov 2025 16:51:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1762908682; x=1763513482; darn=nongnu.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=CaohwLtIR7C9243DMpjNQ1vbzBgBz3c5xAC0e8E0Q+0=; b=CEgWIjNkVsVgpAojw07FM1Yh5cdq5ET05ul1GlNQT/lz6xHqsXvKCC/Va71iOz0N1B JkntsRunPQvKirMFNO0sRFNNE3xKeKPHj/NXE93zqe9nGJit2MiLogNuU3pJZ70SoQ+5 RkZmXO4BVDo23Vg92GGkovt+pdfRWU7nm8FJLuDIzsOIA4+iX9/ijkeIr81v6E+8G4t/ F2qpuSy7xIjpP/gs/w3JAXltsfBWoOZiHopGOJfb3zFis7UnhZTJxtH0HOvwXu3gXlB/ yZ15Dg20sQ0/VWguNxgY8NMcaAKYNCa7jmMvCpxziYNKwrfMtnj8p0/I6QuStMbrGlUj kB9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762908682; x=1763513482; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=CaohwLtIR7C9243DMpjNQ1vbzBgBz3c5xAC0e8E0Q+0=; b=tJTmouriwLGhkLCSuQZ/RE0OkY5COMUDjVXwlxJGS9XRSRDWHE3Nr8LWkQkg/TCCyy Ca2h0Jtl7vlejI+QnzGvLjvGqDPWGjINhNKglP2s4KimzHWFT4kn/pnGtn/LrFaFHyZF U4fednQ46FTh6L+XfsvXnADzLSCeKtd8p4TH6Svg8RBgxTJLbSDM82D2VP3gunYbAXtZ JaA5TV/PsnKs55Y9lf+kyyaUCFKSS+P82QY7/EOJZ0DGxXArbepcj1cI3phQY6w5o2tj JZLKSycU+naRmb1mM8wDhTfndRW9djNBjtXuf06ZekULMJNu8EUw4n7LeGgJpLMvbomt 38Gw== X-Gm-Message-State: AOJu0YyUEqWGJ2e7MqTBWyIjnIkQSG9i6ngHwOLF89+Z/GuoybeLJZZA wqrsAWcB33Xt39WvUFVxsXRbg7ufRfSBuT1ikA0gzwjjq54UcrUvUu09eiWPsVOi X-Gm-Gg: ASbGnctexMLfjZvWd52WLTeOb8Puc+SrbW8VPy5JDkmOeNZActq/dB7ZKWKrjhiarKe 86hR5Fi+iPclMj0uHQlBQ52pj0TLhf2WB49so6/0YDrYQ8CZ5mzPL02InFidylKM0N0yRR2+t9l zfPo0dMeX9HseFb1EmlwhEzfuEFehWY37gRPV3u+Zxb1JVDTuVdzLxRfLRld/hpkzDPZE9E5qdu s7oKbcwR+dvKG2fyA+v6gt/3pxCGyg/COHuf2b5bgvH+PJvUeio9/YqiOBEGoe+DWRCXTrjSqrT vCvEsxarPA8GcvOQO8vGMsFXoJfoUoLaNHnx6zy3uLkviESPbO/2TOJnXffCgtZ7UhY8xZvbp4J JJ0m0MxZss+YRf/tv0lIqLFIkadt9aVavj57ZYzZSb058ICrAPH/bBcaH5pcyx9IsL0+u9UWlZ0 MnA3tvPCc7 X-Google-Smtp-Source: AGHT+IF+iQ2O/bPV8bzxfq2n7/AJoDexY+2jxkQwYFmiEtInhWya4OGn7/fLuEKgyLuWPYTyEA8u7w== X-Received: by 2002:ad4:5aae:0:b0:882:49b3:c696 with SMTP id 6a1803df08f44-88271a1145emr19627776d6.50.1762908681800; Tue, 11 Nov 2025 16:51:21 -0800 (PST) From: Gabriel Brookman Date: Tue, 11 Nov 2025 19:50:53 -0500 Subject: [PATCH RFC 4/5] target/arm: add FEAT_MTE_STORE_ONLY logic MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251111-feat-mte4-v1-4-72ef5cf276f9@gmail.com> References: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> In-Reply-To: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> To: qemu-devel@nongnu.org Cc: Peter Maydell , Gustavo Romero , qemu-arm@nongnu.org, Gabriel Brookman X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1762908676; l=1406; i=brookmangabriel@gmail.com; s=20251009; h=from:subject:message-id; bh=yvgh0EMVT0ltvLWA+q61dbTURKT5fEJL48Kbo0rzv/c=; b=Kdv1k+wkfEJeapVX/a2Nintjqzq2Mrx8gjbxU6/lwZPigtn5Tki8JOSTHHSblyJE+Js2qB2/d 01WgRerU9qCDZtFMgUUQOUCmG+dOCMGCcZctDyrpWKn9YZpS2bAt7M3 X-Developer-Key: i=brookmangabriel@gmail.com; a=ed25519; pk=m9TtPDal6WzoHNnQiHHKf8dTrv3DUCPUUTujuo8vNrw= 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; Received-SPF: pass client-ip=2607:f8b0:4864:20::f34; envelope-from=brookmangabriel@gmail.com; helo=mail-qv1-xf34.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, FREEMAIL_FROM=0.001, 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: 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 @gmail.com) X-ZM-MESSAGEID: 1762908773024153000 This feature automatically succeeds tag checks on load instructions when the appropriate SCTLR_TCSO register for the current exception level is set. Signed-off-by: Gabriel Brookman --- target/arm/tcg/mte_helper.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/target/arm/tcg/mte_helper.c b/target/arm/tcg/mte_helper.c index bb48fe359b..3f7e89f436 100644 --- a/target/arm/tcg/mte_helper.c +++ b/target/arm/tcg/mte_helper.c @@ -865,8 +865,30 @@ static int mte_probe_int(CPUARMState *env, uint32_t de= sc, uint64_t ptr, return 0; } =20 +static bool mte_store_only_active(CPUARMState *env) +{ + int el =3D arm_current_el(env); + if (el) { + if (SCTLR_TSCO & env->cp15.sctlr_el[el]) { + return true; + } + } else { + if ((HCR_E2H & env->cp15.hcr_el2) && + (SCTLR_TSCO0 & env->cp15.sctlr_el[2])) { + return true; + } else if (SCTLR_TSCO0 & env->cp15.sctlr_el[1]) { + return true; + } + } + return false; +} + uint64_t mte_check(CPUARMState *env, uint32_t desc, uint64_t ptr, uintptr_= t ra) { + if (!FIELD_EX32(desc, MTEDESC, WRITE) && mte_store_only_active(env)) { + return useronly_clean_ptr(ptr); + } + uint64_t fault; int ret =3D mte_probe_int(env, desc, ptr, ra, &fault); =20 --=20 2.51.2 From nobody Sun Dec 14 06:34:29 2025 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=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1762908773; cv=none; d=zohomail.com; s=zohoarc; b=Z7gh1LSFzl5TDh2+R0OqRV6tOEnerhJqKRB+i0gcHEUepXNRkJtRptWf4ucIV2xRn9HTaEl5d4ZicRcuPnXskmpOZuZLT+b2Si/uEFVLIOeXdVleaUPMxgFPkALLUPrSGqDMpHvg8NcFpUlvlJlnjIopgBXoFKQBbSSstb7lANc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1762908773; 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=rVrVdypkmr3E/RiyYnlF3XIe+i5PDhK0NolgWCoGEMM=; b=gAqgxpjyrWSu99vNlMyDdjMb+5o8oow/WgK+VrS1VQAHbfLkkcbop+vx1OuD20rWSLPHClNaJX/aJ/q79sIu1KVzC/Sc0Nu2jXKe7VnxJW987mCT1woUekOIU1acnNkgqF7646Q97gvsjctwTrRXqkDgn5oe+Qk6iFWNDPOF4tU= 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 lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1762908773143646.3651520714501; Tue, 11 Nov 2025 16:52:53 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vIz55-0004Qn-M8; Tue, 11 Nov 2025 19:51:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vIz53-0004P9-3A for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:25 -0500 Received: from mail-qv1-xf36.google.com ([2607:f8b0:4864:20::f36]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1vIz51-0005pC-Ja for qemu-devel@nongnu.org; Tue, 11 Nov 2025 19:51:24 -0500 Received: by mail-qv1-xf36.google.com with SMTP id 6a1803df08f44-88246676008so3513956d6.3 for ; Tue, 11 Nov 2025 16:51:23 -0800 (PST) Received: from [10.0.0.22] ([185.213.193.149]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8823892a79fsm81445096d6.4.2025.11.11.16.51.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Nov 2025 16:51:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1762908682; x=1763513482; darn=nongnu.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=rVrVdypkmr3E/RiyYnlF3XIe+i5PDhK0NolgWCoGEMM=; b=Uq3j8TucwtgP5rvUay6c2vL9ooed741bdY/X4mnyKNie6/IrnOa6do2E1EHy3r1Qjl BQZfK7UmY36KK+zb7cT03lFieyjFmUycZa2JXeFkRkYlE9xXo9XPQr75fNyBMiY2oLoY ebmlghAv++YQfP4u2nT3/1F3M7KKmVFsrwP5CMjITWybnsoBXjX7dz1qc9+QOAhhGXr8 YT5OTxbg37L1i8H8k0mvVo/pblyw/MlU1qCpWLIyQ163Fg8pCBNDLBTxcWPUIaTd6T9C zBOvutblkxa6XVa4fVkeWX43uUpcZv1OpSlKozP9uU84iltSvjUWaI/VQ2LTJXIHZkCl Ffiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762908682; x=1763513482; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=rVrVdypkmr3E/RiyYnlF3XIe+i5PDhK0NolgWCoGEMM=; b=P9IUedm8fgRuSnjF7DP73L7e+rFFaL736IdaNSb6RIe/A1OU9rwU9Imgoj1V8O4kin upkPLHQEEs8yEL0xzwrDPP5qzX8mGkbCIZEU53nleP7kzS09ZLmD9qX4//aFgdOxx9vK drw9DZRkCg/UbYBW3v2jG38pLIm11RA4Xn7fV05WO1CP6vQYWKpx3kwDoOt3w3szpH1r k7kugBIoYoX/kPYb1AIGcphwt+jxvf7aG3KYI1CV+yUSCh6GXUGnfLoOI6xIqiSYokTs icP7QNE5IbL3pn4f3w9TjM84gD/RoIvZyDIox6oK9XR0HwPky0DFmtW8JMM8cjp9u/DH lzFQ== X-Gm-Message-State: AOJu0Ywnzqqk/VN8t9KymSHj5E9ImjCDJVo8yEyBd3XY84CcP1/frYJ2 Gn8WxD5drBHmA2RvIkvrWg10XB1V205TrT4MSeIDBkmJ637LB3kRKCuC X-Gm-Gg: ASbGnctIZs43nxATJPMp9meVEukXWy8M86XMwRgPFrqt/BgQdTKLZ1jK0/Q4kZwdXHm 3jHOLslw0d8r83QG1b95mIGOo4MzbyC83SiA/SQObiBYJBm/XH+KYxh43M4mpLOWN7PC97qtAU6 tsiK4sF8KyxInUILhIx1BrV/jrHvWQrmd3eayafD7aED6W/wEXbcJdNj0XYxpwEkbthqQILoSKM yGWiyj7H9m1kfoi3pLmQLrNvNsuQroGXhhfPMCb6T5F2tc5f7e33pjeGvaQEpJcoxMHLxV0XhGG 75mwkUS+lpShxvbEPl3TOnuCOBMe7PScSO1KgyGVK7/Ea0qLH4/qU2MgU7rv5WZi7J1OSZTFGYH wycaNolpzZ5idGpVLbog8/Mn1yLKayMcg74Eqd3H9PEzSKmZXq5c78zeZ9BToGerwQvPuNUGm+U cqWKWGph0Y X-Google-Smtp-Source: AGHT+IHR4+2wsvWMJ2uexni3JJo6oV4CQ39Ih4GxApgCORsMnAdc3C0jeteLKykvcxXvemvFxxIKwQ== X-Received: by 2002:a05:6214:2a4c:b0:882:3afa:74 with SMTP id 6a1803df08f44-8827193ddc9mr19904556d6.29.1762908682575; Tue, 11 Nov 2025 16:51:22 -0800 (PST) From: Gabriel Brookman Date: Tue, 11 Nov 2025 19:50:54 -0500 Subject: [PATCH RFC 5/5] docs: added MTE4 features to docs MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20251111-feat-mte4-v1-5-72ef5cf276f9@gmail.com> References: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> In-Reply-To: <20251111-feat-mte4-v1-0-72ef5cf276f9@gmail.com> To: qemu-devel@nongnu.org Cc: Peter Maydell , Gustavo Romero , qemu-arm@nongnu.org, Gabriel Brookman X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1762908676; l=900; i=brookmangabriel@gmail.com; s=20251009; h=from:subject:message-id; bh=yMYVdAhFPzUk+dj5yY7HVAqBXvYMOye3T8cT36hK3K8=; b=Omlvu1wD6ymvmau/bEIFPE1YuQ1TuofHTJxinh/K8gU7BILZTwfivVqgkQmT1vErD+CJ6UfxU TdPhckojQUhCjiKCg1q9GGPK8M5zbt3lddS1MJF/a3gGwIHAqmN1KeF X-Developer-Key: i=brookmangabriel@gmail.com; a=ed25519; pk=m9TtPDal6WzoHNnQiHHKf8dTrv3DUCPUUTujuo8vNrw= 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; Received-SPF: pass client-ip=2607:f8b0:4864:20::f36; envelope-from=brookmangabriel@gmail.com; helo=mail-qv1-xf36.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, FREEMAIL_FROM=0.001, 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: 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 @gmail.com) X-ZM-MESSAGEID: 1762908774862153000 The implemented MTE4 features are now present in docs/system/arm/emulation.rst Signed-off-by: Gabriel Brookman --- docs/system/arm/emulation.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/system/arm/emulation.rst b/docs/system/arm/emulation.rst index 31a5878a8f..1bf99c77bb 100644 --- a/docs/system/arm/emulation.rst +++ b/docs/system/arm/emulation.rst @@ -106,6 +106,8 @@ the following architecture extensions: - FEAT_MTE3 (MTE Asymmetric Fault Handling) - FEAT_MTE_ASYM_FAULT (Memory tagging asymmetric faults) - FEAT_MTE_ASYNC (Asynchronous reporting of Tag Check Fault) +- FEAT_MTE_TAGGED_FAR (Full address reporting of Tag Check Fault) +- FEAT_MTE_STORE_ONLY (Store-only tag checking) - FEAT_NMI (Non-maskable Interrupt) - FEAT_NV (Nested Virtualization) - FEAT_NV2 (Enhanced nested virtualization support) --=20 2.51.2