From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150088.outbound.protection.outlook.com [40.107.15.88]) by sourceware.org (Postfix) with ESMTPS id 733DF3A07045 for ; Thu, 22 Apr 2021 09:43:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 733DF3A07045 Received: from MR2P264CA0037.FRAP264.PROD.OUTLOOK.COM (2603:10a6:500::25) by DB6PR0801MB2022.eurprd08.prod.outlook.com (2603:10a6:4:76::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4042.20; Thu, 22 Apr 2021 09:43:31 +0000 Received: from VE1EUR03FT020.eop-EUR03.prod.protection.outlook.com (2603:10a6:500:0:cafe::3e) by MR2P264CA0037.outlook.office365.com (2603:10a6:500::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.22 via Frontend Transport; Thu, 22 Apr 2021 09:43:30 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; sourceware.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;sourceware.org; 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; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by VE1EUR03FT020.mail.protection.outlook.com (10.152.18.242) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21 via Frontend Transport; Thu, 22 Apr 2021 09:43:30 +0000 Received: ("Tessian outbound 34291f7cb530:v90"); Thu, 22 Apr 2021 09:43:30 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: ff7fd511b17d58dc X-CR-MTA-TID: 64aa7808 Received: from 986e22824966.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id A4C2DECB-9B3D-4AD2-A3B5-481070003A90.1; Thu, 22 Apr 2021 09:43:19 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 986e22824966.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 22 Apr 2021 09:43:19 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YoeSfQWxR9ni1qQfJ3kUNmk0uqJux6uw3u5QItf/jUQtJq7W6iARxDai2x9Leca+jqfkxCxoKE1MtH4n/wgm6UMob9l2zUZAVsuOntPEkVBdaCPWHG8Sat97uXvx3LxPimckokPrNlie5nGpOiV7ZzE4mP7FCaquMCLhQ9A8892is3H66o5h0S0BaHBGvrBA2R/kWwmMCdzwcJfmXR/2NeNuIoSN1IXcqvVA87Wc5fkmdi4G4z80b+nCFZLpYgbx+FwkE1ICZUNqhMCTotw7NfS3PXUldj/ioJ5lNRdnwtXiJwkM7ccDra4GzuL/YCkOUZyV5zxDvfX0NCx6Lnq8Lw== 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-SenderADCheck; bh=pJkTv06Z3GR1NG0jG984uxyXUP35L251L7fbi2gncvg=; b=ePf4s4kPmULB9H9IDxDl0jLQKphna41W1SC2oE40votiWyawF+z5R9S2xAUS9NTZ4fDawOhob+oYX46kUl6l3hhgq7rvCPP9k589sUnHOF/C68MAzH+6sZK4YdOeWUtIx8o7TjFTc6nSOISAl90i117GcVRQIG1MyqS82bQr9eyHJ5+UJ+cwh7KiLbXEVIM0p0XZNsgCnHKqxj0SoV0U/r5k3lkQSi0eektCg3GfKbnkKcfndqUowCDwF69kkIrp9DUmrlwA0rhsGsUQDwpcPhum4TB4lVEUz18SupyhxrZJbdZlqu/Hy6jApL3CXhQoJlmXriRq0Bcd+Su9Y8woJQ== 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 Authentication-Results-Original: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=arm.com; Received: from PA4PR08MB6320.eurprd08.prod.outlook.com (2603:10a6:102:e5::9) by PAXPR08MB6365.eurprd08.prod.outlook.com (2603:10a6:102:156::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21; Thu, 22 Apr 2021 09:43:18 +0000 Received: from PA4PR08MB6320.eurprd08.prod.outlook.com ([fe80::c99f:671d:bb2c:f20b]) by PA4PR08MB6320.eurprd08.prod.outlook.com ([fe80::c99f:671d:bb2c:f20b%7]) with mapi id 15.20.4065.022; Thu, 22 Apr 2021 09:43:18 +0000 Date: Thu, 22 Apr 2021 10:43:10 +0100 From: Szabolcs Nagy To: "H.J. Lu" Cc: Florian Weimer , libc-alpha@sourceware.org, "Kirill A . Shutemov" , Joseph Myers , Vedvyas Shanbhogue Subject: Re: [PATCH v4 1/2] : An API for tagged address Message-ID: <20210422094309.GI9028@arm.com> References: <20210420021819.765779-1-hjl.tools@gmail.com> <20210420021819.765779-2-hjl.tools@gmail.com> <8735vkqh38.fsf@oldenburg.str.redhat.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.9.4 (2018-02-28) X-Originating-IP: [217.140.106.55] X-ClientProxiedBy: SN1PR12CA0043.namprd12.prod.outlook.com (2603:10b6:802:20::14) To PA4PR08MB6320.eurprd08.prod.outlook.com (2603:10a6:102:e5::9) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from arm.com (217.140.106.55) by SN1PR12CA0043.namprd12.prod.outlook.com (2603:10b6:802:20::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.21 via Frontend Transport; Thu, 22 Apr 2021 09:43:16 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 003da8fc-ae04-4c2c-8a36-08d90573168a X-MS-TrafficTypeDiagnostic: PAXPR08MB6365:|DB6PR0801MB2022: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true NoDisclaimer: true X-MS-Oob-TLC-OOBClassifiers: OLM:9508;OLM:9508; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 1iFEnACL6qtmv9tIy3TCxbT9RkXjPgjcAyUPzBUT7yykZ1VNj5Wab8LqvljmvPp/BhzUGd0GbeZS7UMgrGvuo85LDshwPrmmv0/cRO0wws6s1V/rQSD99Eqv2sYXgXx9bJrX4GZcr08YQop2bYyUiTy0vqDnxZc6XNru0rNDlqJ13lcQvT5vnFQRICD6uln8AEcgabNJ/gMQSGNcRPnRmittdBleUW3DFyovhO8XlyQWTtwJIby2SA85HJwgDW/PuiSasJVvNPrZAPGUhGUWHOoz7eKVthVBBysOxFl3tqwHUUTh+8ZfYTRLw+T95YBtyoy3wJlimdOC5TF1XiapkwzRzwqSWK8jQeoGAMttvPRRN1ZkcQDXawKUyJG9/hFeLH7fg8QACZIsuEHP2Ucc23/Cqn1drr+SOYrNDUB/bqaxZRy5nzr7LXjQsREPOKZ1pWfmQxOxDy2yo8WIBQ+ulYe5u4aA61EA9sh8XGUEm0QFFAFTfz3iGuztg1yPcU6oVpvKnYYOAFgYypximR8dpkeo/1rXUNxU1GoFsnYW6yUXKyJ4MFMCZyq2oSLRNZybow9bADtJEkV1eDe7hYw8W2KwBiDnBVBIC6sK54PytubMs/If1xP/9o4dPudLuRpwjjJjw3/GdI5tMfsp+Q0f8ixY8+PDM1duvTS2bDI/lPAXUsSGh1WalDjcbyIYMgouEYJAki3SDZhsMpU4jZf80sQFgLCJKnm88blSnlqYo3w= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PA4PR08MB6320.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(396003)(366004)(136003)(376002)(346002)(39850400004)(5660300002)(54906003)(33656002)(1076003)(956004)(44832011)(6666004)(316002)(2906002)(26005)(36756003)(6916009)(86362001)(55016002)(53546011)(38100700002)(66556008)(2616005)(38350700002)(66946007)(8886007)(66476007)(8676002)(83380400001)(8936002)(186003)(4326008)(16526019)(7696005)(478600001)(966005)(52116002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?TkZBUXlsMUJNMU90UlBnTDJPbkRQVEVZbjVSbHl5dTlYdjJJeEhjamRHSUI2?= =?utf-8?B?dWswbXRXQ25sakNIMURKVFo1K01HdlpQYW1LZDBBdXluU0JwWlVkQnlYT215?= =?utf-8?B?eXVlR1FPQSs0TDAzY0w0OGFRRXkrem1NSWpyVGt3OVE0NFE5Z3p3SWlWcXRo?= =?utf-8?B?QnFTNmY5cmhuR0tERkJJSk5YRXpOQUZ4R054UnYxa0dJejBRMFRUUGovNGtZ?= =?utf-8?B?WVZ0elJWb3FoaitIdlRxNnBSR0IzaE4rSFFocUxUaHk3M05rQkxZTFlqeUhY?= =?utf-8?B?VTBaQmR4YzN6OE9zclE2R0hEa2VDaFlHYkdPcTRhNytuZXBIQlByT2RpcVpy?= =?utf-8?B?eE1nWnVuYWRnMGs3eW5vemNXdldDUXppZ0lvejFvcWc3WWlDVzhEYUpLN0xx?= =?utf-8?B?UnRpektJQ3czdDZ1VVJSSytXVzNYdTNVdVNTMVdpbER5U2tXSmxNcVBTM01i?= =?utf-8?B?cU5sWW1ya2ZjczRjeGJEczBZV1p3Um1iWllIOFp4M09xWTlyUk41ZytqbEh1?= =?utf-8?B?S21VZ09JUVNONVgrS011d0tKZS80eXEvdVBwdnNGV0FvR0tBL0huVlhaTDFq?= =?utf-8?B?SEFac1Bob2sycGsvUERDazE1NG9Ga3VFcDJ1N1JKZmYyUzB1d0lTUmlDbEhC?= =?utf-8?B?SVZEdlN3N3ZIMVlVeUhlMHUyY3U0eFFtZWhGVzJRdlRrZUJEN3hGVmVOenA1?= =?utf-8?B?R3FacWVpZVBuV2s5QXZsR0hWR3d4a1FDbCtPZzNsbkpKVEdPYXBaUExhTzVY?= =?utf-8?B?QlZ0a1FOVlhzb01yYktENUc3VnUyRjRtSUJyTGNpYUFFWTV2eFgreUxDL3Vu?= =?utf-8?B?NHg2UWNGditGU3N1TXFPSVhSY2Y2akxsQjJ3cnF4bDJoWTloTFU1RkFGWlFZ?= =?utf-8?B?SldZY3FUUDY4UVdWTmpmQUJ1dm9IWkdEYWRVMkh5NWdHdjNUN0RXV2pDMWVE?= =?utf-8?B?aWcvQmVZSS9XdTBWcHdaQ3BLK2IrMHJtOGNGQWM4YUZvekhlMDdRQ3NBRi83?= =?utf-8?B?WXVYbFhWQVBlVlBTTXA0K3I5WFpvSkh6RUdLWDNDbitTSXFxYzRDSEt6SW5M?= =?utf-8?B?MHNuQjZLWXB5MWdJV1MxUkJwUmh2RXRvZXloaXFPRUtTUlFkSW9tRkRiakky?= =?utf-8?B?Y1ltY0xIN0ZBL0lLekRPY1paVXhiNHFGc3RIYW9YMXFtak1OUEwrblZqdTFX?= =?utf-8?B?NWowRGlMd1NpUUdnNUNFSnVIWWZhNFVleFd6RUdDdGc0VVQ3dUlvS2ZZL091?= =?utf-8?B?V05EdktmcDI4cFJrWmQ3dVJ3dnBHMUEwc0VONWJhY3VsbVhaWklubHVBUVBs?= =?utf-8?B?Qnl5eWtyVlpOMi9QUExFd0xIWW5vQnNtNHg1YVNvazVwR3ZhREdVTWY1ZkY3?= =?utf-8?B?akNhZFZHbzlLZ3hERGI2UnJhZWIrRUlxZzc0WENXVkVZMTJaOEl0dFdjbkNW?= =?utf-8?B?TGxwdGd0d0Y1SU1ybzJ2ZUIxUkRoODNRaHl0YWkwSXRxOWtLaGE1eEJiZ1p6?= =?utf-8?B?STNVU1hkYmhDd2VROXlDTnVWRjYzWjI5UlBwdE1RTlRBTU84U0IrcDl5eENy?= =?utf-8?B?ajhnQkRYbW5VeG9uR1FxVVNYY1VGdkplMmUySkVjM2ozaVlyWXlwTlh5S2pv?= =?utf-8?B?aURSNGZOWlR4aGFGNklpVmZrVmh1bzRXZXBna0txUHpEYVRRdkEzREkySG1q?= =?utf-8?B?dlV5SzUrRUMxbldWUUozaXlhRkoxRFI5dXVpNFdqMlgwT2xGTnB1bUhGVzAy?= =?utf-8?Q?6norz1TRjUz8YlL5RIdfz+1p0TE/NHVqWPSyRIO?= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6365 Original-Authentication-Results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: VE1EUR03FT020.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: cf48c529-4403-4bab-e22d-08d905730f47 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iaOOubmRmrqDDQRo+M7ZKVyCfdxTt8wHpr0fXhTdyFKLOJENTQ18ji/1RWNDZPr9eHOULE453oZ0ia0qdh2wxyW/P1l0slzGgqzZsFiCSuUO8uNn/JjXQD8kV1/83qonRRWC9QJf8RIO5akzffeVspYAIbB7gVJf0TUBqH24zxwqBIIoCRh5dX1Zdnj+3SuOkC5ojqbNs6u5KCbUijfrnQx+aPK9pFVoPTNtc7zVD3ohIjt05SqQKXaswKG8ZIn1SqxvrTmDOujrptwW5fLTYscG+Snbvu1HNv8fww6gr5Kl/BJHbKH5qt+5ualUClTwHOQ273KHdtcro0wnzbDEk7IEpkAf+2Oloe0AwhqPiUx+Gq0Biwlp4/kBDPz3JDxKCSmKEHB/TEfP7xontuw4Q3uEVWphEM8z79sSAiWeP3Sa5MPt8kZqO58Iz7BgVO+qz80cn6OxhH2oI13LzvkCVzbHLRXHfjlJiEBIE53zcFW8AII8n0uNtB9fRB5jlIYsbPMB+0dwTW7Wg3wqGVQpPvpbh6X5dqXO5dVv8QDRwKkwuP4KfI/dIQlY8GeF1+8RvsgbAu0Wr5I76Mgb/7aEZk5TOgPf6laSMLBt4njWJ1uMtuSG7x8czgiVEnzAlqmFImRhx9WfqIEYrYfZUbqqDpWb8w/yxibpW+T/AIMHerL56qSMqRcnr49Kt8kgpW5tfH2rM1HeUNGJJ1JeJbaHdinyj8IeFPWlPY7OoAyZkr0n6bTQsK88gQ0i6oTRKvY9nk/7YvQ/FXaji8t8mV/fcA== 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:(4636009)(136003)(346002)(39850400004)(376002)(396003)(36840700001)(46966006)(34070700002)(186003)(82310400003)(8676002)(2906002)(316002)(336012)(70206006)(107886003)(82740400003)(47076005)(26005)(83380400001)(956004)(966005)(54906003)(33656002)(7696005)(6666004)(86362001)(2616005)(44832011)(70586007)(16526019)(4326008)(53546011)(36860700001)(55016002)(1076003)(6862004)(478600001)(81166007)(8886007)(5660300002)(36756003)(8936002)(356005); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Apr 2021 09:43:30.5882 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 003da8fc-ae04-4c2c-8a36-08d90573168a 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: VE1EUR03FT020.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0801MB2022 X-Spam-Status: No, score=-14.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, MSGID_FROM_MTA_HEADER, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) 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-List-Received-Date: Thu, 22 Apr 2021 09:43:38 -0000 The 04/21/2021 16:21, H.J. Lu via Libc-alpha wrote: > On Tue, Apr 20, 2021 at 11:36 PM Florian Weimer wrote: > > * H. J. Lu: > > > diff --git a/manual/tagged-address.texi b/manual/tagged-address.texi > > > new file mode 100644 > > > index 0000000000..ce10f7e752 > > > --- /dev/null > > > +++ b/manual/tagged-address.texi > > > @@ -0,0 +1,59 @@ > > > +@node Tagged Address, Character Handling, Memory, Top > > > +@c %MENU% Tagged address functions and macros > > > +@chapter Tagged Address > > > + > > > +By default, the number of the address bits used in address translation > > > +is the number of address bits. But it can be changed by ARM Top-byte > > > +Ignore (TBI) or Intel Linear Address Masking (LAM). > > > + > > > +@Theglibc{} provides several functions and macros in the header file > > > +@file{sys/tagged-address.h} to manipulate tagged address bits, which is > > > +the number of the address bits used in address translation. > > > +@pindex sys/tagged-address.h > > > > I don't under stand the “which is the number of address bits” part. > > For tagged addresses, not all bits are used in address translation. > For TBI, only the lower 48 bits are used in address translation. > For LAM, it can be either the lower 48 bits or 57 bits. > > > This section needs to describe under which circumstances it is valid to > > alter the tag bits in pointers returned from glibc functions (including > > Tagged address is enabled only when get_tagged_address_mask () != -1. > > > system call wrappers). I think at least historically, the kernel > > required masking tag bits in user space for TBI. > > I believe this has been fixed in the recent kernel. on aarch64 we need prctl(PR_SET_TAGGED_ADDR_CTRL, PR_TAGGED_ADDR_ENABLE, 0, 0, 0); while single threaded to enable the tagged address syscall abi, see https://www.kernel.org/doc/html/latest/arm64/tagged-pointers.html we do this for heap tagging because that depends on it, but we don't enable it otherwise because previously invalid addresses now may succeed instead of EFAULT/EINVAL in syscalls. i think glibc can just enable it by default (always run processes with tagged address syscall abi), i don't think that would cause regressions other than different errno in some odd mmap etc usage. (i think one glibc test fails along this line with heap tagging enabled, if that's considered risky then we can do some per process opt-in, but a libc call is problematic as it can be too late)