From patchwork Mon Jun 27 18:00:50 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tejas Belagod X-Patchwork-Id: 55452 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 6356C38312A3 for ; Mon, 27 Jun 2022 18:01:31 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6356C38312A3 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1656352891; bh=LMfIx5MlZQnvgwRqSLv0IEpRf6QvLn6WUfDUbnWlZhM=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc:From; b=TTDyXjTfDkKFf/iVGFMwUE8hnFRS+Sr7nh3amA/QQj+DhknWlyme+xUyKjjQHtee2 MQnCRefGt4IdDhXYjGbE+/pSp4LrPgRxMpEp4R7dz/JQRMi6qiGA3+gddL4E2Bj2wq 3GoNaKufpqc0A+JAzr8zvlALXHQjr4weRy3bK/o4= X-Original-To: libc-alpha@sourceware.org Delivered-To: libc-alpha@sourceware.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60040.outbound.protection.outlook.com [40.107.6.40]) by sourceware.org (Postfix) with ESMTPS id 8CB3E3856DD8 for ; Mon, 27 Jun 2022 18:01:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 8CB3E3856DD8 ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=TtL8ysQgWs8x5xidqqUpt5ZY7f1Os7o+zOJQJx+vFs2pXqqWeXUFL6oA33+/1eFP8tWosOY/D1Q3aL1PC+/Ri5dnjEuMtnE3bKBQ1XZ9k/aOHPfbAFLhNkhR/TevCge+fQn23otXnCQ28db4eB5QJUe7Z26psbr7ZIP2JiBUtE9YtlBxKQiMUVetklHpJbx8ocr85PCvjnU49F4qPsVPh6aW+U0ZGS4vcpP3qIMhjs/KWQJMD807YbGFx74bNFmpxLGBBfT9o+Yk+TiMubJM7UVnayydWFPqmh4H3vlCJKylQJvCXJYQc9znY2a+Pooj0VIbCPILEuaPBUwQ0FMn7g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=LMfIx5MlZQnvgwRqSLv0IEpRf6QvLn6WUfDUbnWlZhM=; b=UouUG2zgfbqBWwNbslPRwIgBK6P3TyaiaLJh+lwyrjBiQY8RbjcS51zhVPCQeUCNZc7szFGiUNlQDmrpAXW/hQpoc93rbZSoll0PtdD2XhyvAyhmtyWwj1bo0mwQ8pHdM7e7kXjlsmHIIdys5Qyouw61x1hBt2ueiycRIkQMfc80juby3r0qni/3CEYabqUlukqX3d2j0K24PKV1oL0/ALiD8MUmQGy4hxur7gTGtRbWwmiDfqu6DphybI9AIi9CXMaW2gpspxMtJnXssNc9TiteWCRxRi7viF6cx0C6sKYwLp1kxACwtMopNAdBZIQfd5V8KF9ld+vnzMYDi5C8UQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=sourceware.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) Received: from DU2PR04CA0044.eurprd04.prod.outlook.com (2603:10a6:10:234::19) by AM6PR08MB4658.eurprd08.prod.outlook.com (2603:10a6:20b:c4::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.17; Mon, 27 Jun 2022 18:01:04 +0000 Received: from DBAEUR03FT020.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:234:cafe::4c) by DU2PR04CA0044.outlook.office365.com (2603:10a6:10:234::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.21 via Frontend Transport; Mon, 27 Jun 2022 18:01:04 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT020.mail.protection.outlook.com (100.127.143.27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.15 via Frontend Transport; Mon, 27 Jun 2022 18:01:03 +0000 Received: ("Tessian outbound 1766a3bff204:v120"); Mon, 27 Jun 2022 18:01:03 +0000 X-CR-MTA-TID: 64aa7808 Received: from d2d908d5b343.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 69B880C0-2EEE-4CA7-BFBA-80F54F629370.1; Mon, 27 Jun 2022 18:00:53 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d2d908d5b343.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 27 Jun 2022 18:00:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cw2kdSi7bNpvrKdzGo3EhG2hDGVo6Zuepzh9CxM0arkoUNpmybRPKfAjvAV5uuhgbP8ZcYG1juKAjBkBFDDolB+Wyr86lmwuP9KHsuqOF5ssyMXruLRcUx+nY+Y85Hjy6ZoWifvPsS2vhIR6qq8SwwsbMeZsYYSwJjByu1Dg2h3siIqiIu5gmfOfxMiNmJfpRhjWz7fGALt9R14Ri+JrwNMb/vUhY/khLHQjJfm2ErZiKZR8L0PVPf0FKhYJtSX1rdazxu97epwoUFifosCDoBcPKclQmc6gaVWPTT9v+3XkQaJuHN/+4z2r4fuGIgjdFN06why11WNnvYaotE6e1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=LMfIx5MlZQnvgwRqSLv0IEpRf6QvLn6WUfDUbnWlZhM=; b=BAGFErClRquFusrVBIA1ekkzb687iRcXYbfQvpE972bG4UIG/Liq92eWCBUsMG9i/r5ddl9heaR6Z0bKDsg9QxhwnwfgHNkKJMN3n18boCZig+QPB40e8a0d6h1L1L8OsuRfq2VnMmkq13vnJ3LTBapngUF5DT19F3o+6tdQUfZn4e1EJi8QPC3yWlRkyjErGYkMCljDPGN50KA0yfCb5w+UFMHoWaWCjefBCM4lRYKmZloyeDXR7K9/ructPq5trpEMpLC+LWw+6Ntg43Y0Sb5pbURJwrvlveHogF1C9GYMMhGIRFrxDfgqq+NHO4+kJKd4Lo0HGJGDrUwdw7dgSg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none Received: from AS8PR08MB7079.eurprd08.prod.outlook.com (2603:10a6:20b:400::12) by AM5PR0802MB2436.eurprd08.prod.outlook.com (2603:10a6:203:a1::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5373.17; Mon, 27 Jun 2022 18:00:51 +0000 Received: from AS8PR08MB7079.eurprd08.prod.outlook.com ([fe80::14ab:8a2f:bb92:2775]) by AS8PR08MB7079.eurprd08.prod.outlook.com ([fe80::14ab:8a2f:bb92:2775%7]) with mapi id 15.20.5373.018; Mon, 27 Jun 2022 18:00:50 +0000 To: "libc-alpha@sourceware.org" Subject: [PATCH] AArch64: Add asymmetric faulting mode for tag violations in mem.tagging tunable Thread-Topic: [PATCH] AArch64: Add asymmetric faulting mode for tag violations in mem.tagging tunable Thread-Index: AdiKTlq8lCLXLvZqQIKJtzOweVzvaA== Date: Mon, 27 Jun 2022 18:00:50 +0000 Message-ID: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-ts-tracking-id: A201AA578F420E41910A75D268A63496.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-MS-Office365-Filtering-Correlation-Id: 846e0b06-5837-4ff7-a111-08da58670083 x-ms-traffictypediagnostic: AM5PR0802MB2436:EE_|DBAEUR03FT020:EE_|AM6PR08MB4658:EE_ x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: FtC238D1gIGTZ1XoIg0iLcNcS1QgdKpFTV4Rvn39A6rliqdLUvCPCYODORdTmuS+S1WI+7sbK1xwwRpDI+Y4ZXRd44be+5fH3VsHHeFt89i9qfMzS9K5xRvO//7Q4no856K990LO0A3PknnhqzCTQD08GKumRYMqdiVMPAWxakk6eo/OJeGFmXDJ4tSk4Ilq5MSQdiI3fqycK2ITHm92Fz2T9EM2ji6Uub/iKPSX8T4MtaX7yyh7H7B/6wKDZmHKDpVTGXVyLvFByKtR6TeEVJ3yuPCSs6gPz+vxrhypYQ7LF7+zT+u6AD2bDT0KzQmljqoheuxMe15ogbMQdK8Pa85erl9kNGzBwDkJLWdm0eCxJ5FcPO4IhXcW2qy1gZYwcNWLBFw+zG9CrM5MV4EBGssqVyHkGaCTjTJ/sEFh7Rw7KKQe03FGWj/vzfucppsv0kBjpXdPquL6dfxpqhpMXWHAn0NIvMek4euEZ0g/Zn6zGHlrOFr61yK5obkgwyldyqMKckgQ4cCY/6iukZqSGKAqukzu3PlsMgglg3bqP3Si3uxHTuuEXvQ7JF6Ecl6ETiFvDVe1usYZeTVwtbI4POnLzMDXJVdAMfjdUmN5+Zs/YF207aQmz4e4JUa6WhcroIEZLbheb3nfrQmQNsVea+1nht8QsoEvObIMDZNhxhRlY/V8uP/2VGqHmuli1+Xm018Iwus9gjDwl6P2h/FMLFH5wVFj5bqbM9pLWOCfKdKrEpM2DOaO2pGCzgbpa8BfP3hxkSNTzqqjrr1sV5kn7+4cxLj8/vUyzhzSq0F8Jjw= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB7079.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(376002)(136003)(396003)(366004)(346002)(39860400002)(7696005)(186003)(6506007)(38070700005)(38100700002)(9686003)(2906002)(6916009)(316002)(41300700001)(4326008)(99936003)(66946007)(64756008)(8676002)(55016003)(66476007)(5660300002)(33656002)(8936002)(83380400001)(66446008)(76116006)(66556008)(71200400001)(52536014)(86362001)(478600001)(122000001)(26005)(558084003); DIR:OUT; SFP:1101; MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0802MB2436 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT020.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: c16902e0-8dc9-49ab-5fd1-08da5866f8bd X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2MqQDt+03uMDQXbxNV/BzN8N5c/pN3rP2AAJN7BFinj/PhorSvhzPfIoAR7X32McyzOCXGXDDFl2EN2EfZHWlpZRAmS2bQwAsCru1PAaZvrZVKDjbwnGn2ExRhii1y9gVsry02UWyllSeXmXnDu4/RohlmI+kES7ijzKRE5rVzv9QslWD3kivG5Iiyo4EZ5kxX+tmK0SPMGF3x4JKq8s4zzhqDDlP1vLeMqBjsAJ0byQ/14UveCBY1FahNIpUMNzMrN3d6MC3V4rZ90mMhCuoH88EF4MDuMr1qa/2JrA3wfQMnn7O1cTlEbkkSa1QJgrt/vaX4kIcvmSz2FI/uxRUVnhcTTN+s7LOng1DbD9qxjkqhli667rrf9BWbGKFPlVf/ZnI2YFhwmeiMNFYCH4cfXyMagemoXfvhZEYlnKlY1XdwtUJ58rIe4xy8jACGq/PxXtVGYLkwWQGbMnNwkjD4dyhyxXGLJh8lI/QjDLuCbgRc717zDldpKi95L7mRBmuehhwJg06U6ctsnEdLpAjFt1aJJoYtjmurYejyauc+0j9s9B1jh4Be26omvYPBa4h7X0L0bXgkbUJCuPG245BVATEwf73f6KbaFUe7VVrn0y+xXu6TZOkt5iMuMVBmVXeizyh7YTp4wsGfUpYlDcIvhoqPI5NYLGccZ/dv6+Ne17BG1ZYqNKPctFxAtYC9ON56QqhTZ2sa1j/osDUKGi3BqHg9ohOW5/wDuVMYwYGkTSrwbxx15eFtEvNwdJzxLRL/2VXoDHEW0z7Goe+3TW2PmyIijUK8Np6PqJm6l6268= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230016)(4636009)(396003)(136003)(376002)(346002)(39860400002)(46966006)(40470700004)(36840700001)(186003)(55016003)(564344004)(82310400005)(81166007)(6916009)(356005)(316002)(40480700001)(8936002)(21480400003)(336012)(47076005)(235185007)(83380400001)(70206006)(86362001)(40460700003)(36860700001)(52536014)(8676002)(4326008)(33656002)(26005)(41300700001)(82740400003)(9686003)(7696005)(6506007)(70586007)(5660300002)(2906002)(99936003)(478600001); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2022 18:01:03.9848 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 846e0b06-5837-4ff7-a111-08da58670083 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT020.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB4658 X-Spam-Status: No, score=-13.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, FORGED_SPF_HELO, GIT_PATCH_0, KAM_DMARC_NONE, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Tejas Belagod via Libc-alpha From: Tejas Belagod Reply-To: Tejas Belagod Cc: Szabolcs Nagy Errors-To: libc-alpha-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libc-alpha" Hi, The new asymmetric mode is available when HWCAP2_MTE3 is set (support is available), bit2 is set in the tunable (user request per application), and the system is configured such that the asymmetric mode is preferred over sync or async (per-cpu system-wide setting). OK for master? Thanks, Tejas. Reviewed-by: Szabolcs Nagy diff --git a/manual/tunables.texi b/manual/tunables.texi index 1482412078d21cc8da22a62ff4acac3e5297eff9..1d6befaf4a40865a4eee6a6a7a34fa39258f764b 100644 --- a/manual/tunables.texi +++ b/manual/tunables.texi @@ -602,6 +602,9 @@ Bit 1 enables precise faulting mode for tag violations on systems that support deferred tag violation reporting. This may cause programs to run more slowly. +Bit 2 enables either precise or deferred faulting mode for tag violations +whichever is preferred by the system. + Other bits are currently reserved. @Theglibc{} startup code will automatically enable memory tagging diff --git a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c index 41dda8d00327e56b6c85a07eb68435de1dda5dae..d14c0f4e1f2905148ac55a4569fd3e12f9a1d7fe 100644 --- a/sysdeps/unix/sysv/linux/aarch64/cpu-features.c +++ b/sysdeps/unix/sysv/linux/aarch64/cpu-features.c @@ -108,7 +108,13 @@ init_cpu_features (struct cpu_features *cpu_features) TUNABLE_SET (glibc, mem, tagging, cpu_features->mte_state); # endif - if (cpu_features->mte_state & 2) + if (cpu_features->mte_state & 4) + /* Enable choosing system-preferred faulting mode. */ + __prctl (PR_SET_TAGGED_ADDR_CTRL, + (PR_TAGGED_ADDR_ENABLE | PR_MTE_TCF_SYNC | PR_MTE_TCF_ASYNC + | MTE_ALLOWED_TAGS), + 0, 0, 0); + else if (cpu_features->mte_state & 2) __prctl (PR_SET_TAGGED_ADDR_CTRL, (PR_TAGGED_ADDR_ENABLE | PR_MTE_TCF_SYNC | MTE_ALLOWED_TAGS), 0, 0, 0);