From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM11-DM6-obe.outbound.protection.outlook.com (mail-dm6nam11olkn2068.outbound.protection.outlook.com [40.92.19.68]) by sourceware.org (Postfix) with ESMTPS id 348FC38582BD for ; Thu, 7 Dec 2023 03:41:39 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 348FC38582BD Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=maskray.me Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=maskray.me ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 348FC38582BD Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=40.92.19.68 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1701920501; cv=pass; b=p32nD19PNp368On2thr4eGw1hKevIuutssQFlnN7tGMxgQO+UpENKBBCo3+KI6UYDQTcsD4pfUWTkcsHVPIeFthbjm/CYjobWsDZ6YRuxRxtz1QIDFZwkiQD3N9uyVrEvEOXSRtWpzHu3zmjZRJ8C44O5a/HP65K0AHMmcSJTDY= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1701920501; c=relaxed/simple; bh=hbZbB+Mlr2X9XHkAh9gXQ6nMmxkXjjNwJY3Rdp2r56E=; h=From:Date:Message-ID:Subject:To:MIME-Version; b=sAozz7BfNlUPNgVIZA3NkqcIoNTAg12pChNvyLoFNnYxC5O04f1YRHSRY5ecaLfi13+4gS0OFycZYzsrcdecWdiUZnoOVq/QYaLoQ+WIsOzpBH5SwpF2LkLyZbl1OZ669M/suDcgq0aYPjb9W9HrXW3RJaU8Fi9NP8eaqN7jiRo= ARC-Authentication-Results: i=2; server2.sourceware.org ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fSwe4VHfElnSW//47FMAxg0nuL9P2HotQM7CLkAD5k14r04hbpDsz/JHptQQN9TkRbBucIUjx/xU+ps16U0TqBsLbBmyZXfCcJVoX1C6Eow8c6gmf44LTNaWeO4ysjp6U30nQaXiK2Ky72pRYYTMj0oBc41JwN7pKOdrrbiVSxNLrXIvLcQS3g7bOVyFmpxT3UVGk0myyjj4mu5NR5k8DCWrpntEJ00pOOQ1tmQwlSzVRo7X1Aw1XIRvSgOBreXerKoUgrVmgedgTm4yCOwrcKpz2jtN5Ip60JjjAwfqh98uZyFClX5lCABnD90s0LgH/UnMNsWQ3Fgx5OPQufqeSA== 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=D5W6zRKXF4CKlKPR9fwU1cf521ewhr9A/gKIMxRbUlE=; b=n5A/jLFhyF6OwLot7T5wk1SdG/m3hr5LRHrfXtn2Da/ehNjQfU/KBMDvNGkO7Ji8JqTIxxeUpWr84APOtA3ofw4qrImwWpdgRduY5xGEvgJw6BPmtQSqV+ZWgGZ8pzLyW5R2bSd/M1OaDMXDHGZsgMMpMBLcYBYOOHcRBAU9r4tw/bEYeg5jD0mgPpXWecgbFHSZwFMCz+Ab7xAY10yIqAj9FI0IjbkJWmtIKQ9f7L9LD8XuzBbFOg1leES2qvURAd785PrWTl3tQue6/5Q79UynNtJZtfsdkCkt+51UN76Q9uJjYGfd49qOz4JuHIOv0gvJJtn10dotpMNyCOpfiw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none Received: from DS7PR12MB5765.namprd12.prod.outlook.com (2603:10b6:8:74::19) by DM4PR12MB5149.namprd12.prod.outlook.com (2603:10b6:5:390::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7068.27; Thu, 7 Dec 2023 03:41:37 +0000 Received: from DS7PR12MB5765.namprd12.prod.outlook.com ([fe80::2493:49ba:b06b:fa80]) by DS7PR12MB5765.namprd12.prod.outlook.com ([fe80::2493:49ba:b06b:fa80%6]) with mapi id 15.20.7046.036; Thu, 7 Dec 2023 03:41:37 +0000 X-Gm-Message-State: AOJu0Yy7qJHA5yPLGpISGO5dRw/PIHty11NRV8hepTc1ENtaxx55usr+ I6WKP4ZxNGjPzuuWnMP/AyC9gcnqxCn2CBDndq8= X-Google-Smtp-Source: AGHT+IEBTZ/6u5/q+P0hYrYjpF6we5P1lA8OdKri+ievXCgVOiLYxG8oxsQYqordckyMzjeTjmdFd98a9XqRnBiLaUA= X-Received: by 2002:a05:6122:134f:b0:49a:1dcf:21a8 with SMTP id f15-20020a056122134f00b0049a1dcf21a8mr1429624vkp.16.1701920111632; Wed, 06 Dec 2023 19:35:11 -0800 (PST) References: <20230817180852.121628-2-ishitatsuyuki@gmail.com> <20231128085109.28422-1-ishitatsuyuki@gmail.com> <6EED9B8A-17DB-4963-B0DB-F83BCF72DD9B@gmail.com> In-Reply-To: From: Fangrui Song Date: Wed, 6 Dec 2023 19:35:00 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v3 0/9] RISC-V: Implement TLS Descriptors. To: Nelson Chu , lazyparser@gmail.com Cc: Tatsuyuki Ishi , binutils@sourceware.org, Rui Ueyama , Rui Ueyama Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-TMN: [S8q+0YtYLGks2T8DiwpG9yOLeRDyGsJM] X-ClientProxiedBy: MW4PR03CA0106.namprd03.prod.outlook.com (2603:10b6:303:b7::21) To DS7PR12MB5765.namprd12.prod.outlook.com (2603:10b6:8:74::19) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB5765:EE_|DM4PR12MB5149:EE_ X-MS-Office365-Filtering-Correlation-Id: 89c8ffbb-bed1-4e4b-4d55-08dbf6d66a7d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DpiCOQf0VSaTADfeuQsivcHpFjxHORirGK2fFTUfKj49Rjn1nFKSoHnAgVemlNcbm8LRfXY98rOaaH8NYNqV3CXIAMhwZfcReQU2dKzEB2n30Jc27IbhjnJH6eSFxfaLt3QD1GATDbQiIqafQN9XTj64W2VCAG5AfZm4odhHC7K80WgI8Korv9qLbHLr38+dWJXYAIi2krE5kToH4LLFWMV3vUGDWPJ4GICDjwckrxgdCZFnI0UIN81Pmdv+jYGoE4UOqMHOYTKCiz0YLSK639zwMZHmtJglTG6vjfWS1uNQMlSRHOsptOcsnA8aWkP6V1dnSiIfIm9Bgt6VVI7DHli8OsLTAMrM2W0TsRCg2tUcqMGuvihQ6aHcA78DXQgm21vXXmk6PSahhACyFQzA/9g7xcFo+7ibUDZWPWC7EdOVS/WZIRUaH6dfBybkvYpGgTXgUgV+y58Mz0U9gUiXtF6RTNRKlQ+WU1wBeZazQVcZVLGh2pW8bTxnT3ApWkeYezTG4CG3GbaQTOSIVLkMdCBp0lj9GTNDbpePySBN3P+OBGPmn8p0KTI4eJ1NSVz6N76ZZWSgfNrupcY2jrXp5YT1uSSMB1SM8aMZT5lKP1M= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZGJuOVlQSEl3NVZmSTFYM05aYVpuOVU1eDJLbzJnUjBIWU03VTdIMWhNWkxQ?= =?utf-8?B?V21IMG1VVlVUWmc0Vnp3OGQ4RGsrWEUyUGkxYnAxdFlPd3p2TVhON0Vodkp3?= =?utf-8?B?TGxGelhBTG5ESlhQVHNDSnplbFlhcXVJNGMwdnlDZHlrM3J4N3RvWFltSHFi?= =?utf-8?B?aUtjUnFMUEVXemRha283OHZ4Mmk3ck00NTloSFhmdTVhektjbEpLT2dMLzl2?= =?utf-8?B?cmcvVDhmdFVzNXVVRlVYc3BHRVo0QlY3UFY2VzBQY1hkTWMzRXdXeUtNM3hk?= =?utf-8?B?N0dvRXgwYkRpRWcyNjc4UFVEUDVOY01EV3dHMUVCVEtySjZXOEhPQlJMRmsx?= =?utf-8?B?NG1adkpYMU9FUFF5UWF0elpEQ3ZMWGpYZ2RuS0drVlFDVU9PSkYrNXVmRHNa?= =?utf-8?B?Zy8zemlrT0c1cXhsMzlRWFRLNjdjamg4aSsyRVl4K2RDU0Y1TXdudmFoeDJp?= =?utf-8?B?M2Q2c0E0NzdnY0N2clBMYWhVUFZEVm02VENTaEVXeVZjaTg2NUw3NFdEQ1NW?= =?utf-8?B?TzRXdE83QnEzUUhTM0p1YjZKYUdKaVp6TWhYSHpBS2hQamVuY09FamNaYXky?= =?utf-8?B?OUNQaVVacHBFUzQzTVQ5RXYvL2xNQWQzQTV5VW1xd3Y3aXoxcDRQdHRhYUF4?= =?utf-8?B?WWQ0cjNxcU1icFo0eEV1YkZLZWIvcG5aSm5nYXZFWWc2UHY3UDlsZy81dXZD?= =?utf-8?B?ZTg4OVFSNGxpdlZKaXhtQmt4SHVxMHlpSCt4RGNSZk0xZjNrZ0xVaVArWGZx?= =?utf-8?B?U3p4VHRYcHlzaENqR2N5NSt4VldaR3kwTUFIQWRiMys5R3VqZTJZOGVRL0Jh?= =?utf-8?B?YXczZk5SN1Zyd1A1SmhWZ0FEbUdVVHM5YmtPVzZDN3dERjYyT1VySFNINENj?= =?utf-8?B?M0h6TG5aSU54TTF2bnBGNUlZZ29hV082VStpK2xaTHZueDZMWVpQYnZ3TWZy?= =?utf-8?B?Q0RYSURHSy9NVnVnNjFjRXNIMS9taGtXTkpWeSs0bVV3RjR2bGFHSGhlazBP?= =?utf-8?B?QXZTMjZqbEFqUTY5SHhmeDVTVjhMa1RrMGFPTytmQkVDTy9CRmdnWklHOWMv?= =?utf-8?B?UVY4aUdXREpyTTZ6Y3BQczNPYmFwa1YwcjZKUnViLzdPR3FsN3RyYnpaVHdm?= =?utf-8?B?YUZSODVwdkZUeUVQeGZ3c21MWi9NSGZYL0VGZkhqbkVyeWhjMlVPVW1sK0xV?= =?utf-8?B?WUYwSSt3TmE0T3JqczJTMklGRUxYbkNWMnFlTEhkUk1XUUtNWHpubXJudXJR?= =?utf-8?B?WDNuWlhYaUg4REpWOGRFczBHaTZoMlNYamw0SVNYUWFnS0RZQXNKOFlVTVh6?= =?utf-8?B?UDIyOFBkd3hVNC9rNmF4MlhObTN4SndLTHdvYmkrOFRuaTZlZVUvbW9rQXhV?= =?utf-8?B?bW5lU0FjMnRVbEVmTTZIaFFqU2tBbHRaRXpUdERkWll2aDUwL3VRNmRjZU9h?= =?utf-8?B?YTdLQThuYThocDByTm9kZHNOdVVPWUlsUlB2OWhMbjNqZzJqc0E3ZE9vMGJq?= =?utf-8?B?QnJLT0R4MndhZ3diRnNhMThiRTlZSEc0STBLdVprWG5XYlpaaC9IL2NTVW9h?= =?utf-8?Q?kh9IELrde9frgfmycZK1396Xc86aZkrkXy+NbD2QDeSn2H?= X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-71ea3.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: 89c8ffbb-bed1-4e4b-4d55-08dbf6d66a7d X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB5765.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Dec 2023 03:41:37.6490 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR12MB5149 X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00,KAM_DMARC_STATUS,KAM_INFOUSMEBIZ,LIKELY_SPAM_BODY,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Tue, Dec 5, 2023 at 4:33=E2=80=AFPM Nelson Chu wro= te: > > Sorry that I don't familiar with the TLS stuff and TLS descriptor, so I w= ill need more time to figure these out if other maintainers are all busy. = Since there are other patches which are also being reviewed, if someone thi= nks this is an urgent matter, please feel free to let us know, so we can sw= itch to see these first. I know that Android wants TLSDESC and having TLSDESC in gcc/binutils helps check LLVM feature parity... If we have TLSDESC earlier, an OS with a new RISC-V port can make TLSDESC part of the baseline ABI... > On Wed, Dec 6, 2023 at 12:44=E2=80=AFAM Tatsuyuki Ishi wrote: >> >> > On Nov 28, 2023, at 17:51, Tatsuyuki Ishi wr= ote: >> > >> > This patchset implements TLS Descriptors (TLSDESC) for RISC-V targets,= per >> > the specification (merged) at [1]. >> > >> > Tested on rv64gc for: >> > - No regression (& passing new tests) in binutils >> > - No regression in gcc >> > - No regression in glibc for subdirs=3Delf >> > With both -mtls-dialect=3Ddesc and trad. >> > >> > This contribution is made on behalf of Blue Whale Systems, which has >> > copyright assignment on file with the FSF. >> > >> > [1]: https://github.com/riscv-non-isa/riscv-elf-psabi-doc/pull/373 >> > >> > v2: Add changelogs and tests. Minor fixes described in patch messages. >> > v3: Add relaxation support. This fixes tst-tls1-static in glibc. >> >> Would anyone like to review this? This is a prerequisite for the GCC-si= de >> implementation to be useful (especially the gas part). > > > For these huge features, gcc/binutils/glibc should be reviewed at the sa= me time, since all the stuff should be bound and tested together, so "prere= quisite" shouldn't apply here ;) > > Thanks > Nelson Agreed. I wonder whether Wei can find someone to test gcc/binutils/glibc patches... and some packages using TLS (e.g. https://codesearch.debian.net/search?q=3D__thread&literal=3D1). >> >> >> I can split up the series into bug fix / refactors and actual changes if >> desired. >> >> > Tatsuyuki Ishi (9): >> > RISC-V: Fix local GOT and reloc size calculation for TLS. >> > RISC-V: Add TLSDESC reloc definitions. >> > RISC-V: Add assembly support for TLSDESC. >> > RISC-V: Define and use GOT entry size constants for TLS. >> > RISC-V: Initial ld.bfd support for TLSDESC. >> > RISC-V: Move STATIC_TLS handling into record_tls_type. >> > RISC-V: Unify TLS handling in check_relocs. >> > RISC-V: Add elf_link_hash_entry to relax_func args. >> > RISC-V: Introduce TLSDESC relaxation. >> > >> > bfd/bfd-in2.h | 4 + >> > bfd/elfnn-riscv.c | 341 ++++++++++++++++++--- >> > bfd/elfxx-riscv.c | 130 +++++++- >> > bfd/libbfd.h | 4 + >> > bfd/reloc.c | 8 + >> > gas/config/tc-riscv.c | 18 +- >> > gas/testsuite/gas/riscv/tlsdesc.d | 22 ++ >> > gas/testsuite/gas/riscv/tlsdesc.s | 24 ++ >> > include/elf/riscv.h | 21 +- >> > include/opcode/riscv.h | 1 + >> > ld/testsuite/ld-riscv-elf/ld-riscv-elf.exp | 8 + >> > ld/testsuite/ld-riscv-elf/tls.d | 17 + >> > ld/testsuite/ld-riscv-elf/tls.s | 42 +++ >> > ld/testsuite/ld-riscv-elf/tlsbin.d | 7 + >> > ld/testsuite/ld-riscv-elf/tlslib.s | 6 + >> > opcodes/riscv-opc.c | 1 + >> > 16 files changed, 601 insertions(+), 53 deletions(-) >> > create mode 100644 gas/testsuite/gas/riscv/tlsdesc.d >> > create mode 100644 gas/testsuite/gas/riscv/tlsdesc.s >> > create mode 100644 ld/testsuite/ld-riscv-elf/tls.d >> > create mode 100644 ld/testsuite/ld-riscv-elf/tls.s >> > create mode 100644 ld/testsuite/ld-riscv-elf/tlsbin.d >> > create mode 100644 ld/testsuite/ld-riscv-elf/tlslib.s >> > >> > -- >> > 2.43.0 >> > >>