From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-he1eur04on2044.outbound.protection.outlook.com [40.107.7.44]) by sourceware.org (Postfix) with ESMTPS id C20C33858CDA for ; Tue, 10 Jan 2023 09:16:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C20C33858CDA Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mHxErFYOIrPGFjWIXGQpUy55Uc108u1CI+NaxUIYH/LgMedQnN7t0AHCXN7+NbJtbfiyPfW79jBSH3Bl7m4z+Lf2O7h/hgIpTmcLYbhC0W6z85Tm/OU0tiCsGLsYtVljxjjaCjJA+WJ4mYv2gV5wkFHEesub4zAj6JF7NzCSI2DyqkWHuSvFpqa3eIsDs0A1SV28oKI48e1HTXkL6AOByLaUJp5wtPtzfIz5BHnEKkxBPAUVqR5RUIEDUK7M/9os4X9fZfs6cm5QJYIdgccWJDp+64Dl1ady4TYiMFKW+8FnKfITTTBiyvPeWrays/oI1pZIxwii6R39DzXfq5wc3Q== 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=LN9HvBLpawYA/L61CDLv7cpsHNR1oH5yU9kIIe0c2RE=; b=ncxa2MctjM1D1NY8UaISMyCI6hUzfE5Cy5LdAI65G2O0UlmGeyQ/4XxDH3H1S5yi3X/mMHOmkF62Xuga/lep+aOXMST4bGkhkqH3V6wi+S6AI1k/9G1azxHds4zRAOSxyj31hJEl5Q70kj4Ec1ZfG8S8SW+7i3Dh1uTgDqgHZWbpXd/7vO8LH8FwoXOLD9MX+o/UE1J6vgU480XB7MI2RCbwZhl/G0+0xEb5WAzoonDJ9BTiV/TR2UY3ykNFWIl0nsLkZ+iB4YA74KcXIs7fsTQMObKPgagJj7JNCVfAbl9Ppb+ZU2/ZM30YQ86IdI4pSY8Dud/9YItt8N8ZeRQd3g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LN9HvBLpawYA/L61CDLv7cpsHNR1oH5yU9kIIe0c2RE=; b=EjDKy/f0nleJYcdzS5MtRN307gPmF1s8PSUWbWa+toKSXVJc1HelzJPetXN9W0FlSegMI+It/3f5lnleg+WEa9GpKGzNv72nkOcM07n0Wu59yIe0LHN+P5jKF2CDVF224yK1g3nit7IqSnNJxwl8GcAwN6Q5zCrNodQZ5J8j0Z/qKnSADzowaIP8IpMZdHqvkkLijhtZ1l10IfPkJkRiXqjdgAzCvXIs3VsI99z2vsgt8vbMIGLc2n9a1sXNLrZHU373+uOl50tcS72yNIKDThvW9OI1xRNsNje15hIduyRgdq3R6s40TKnXXlFkY9QV1lQ1lXKLLwb5Nts/6Nq4iQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com; Received: from VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) by AS4PR04MB9267.eurprd04.prod.outlook.com (2603:10a6:20b:4e2::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5986.18; Tue, 10 Jan 2023 09:16:56 +0000 Received: from VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::2991:58a4:e308:4389]) by VE1PR04MB6560.eurprd04.prod.outlook.com ([fe80::2991:58a4:e308:4389%7]) with mapi id 15.20.5986.018; Tue, 10 Jan 2023 09:16:56 +0000 Message-ID: <0c9cd182-ce08-6720-1e51-d7171f075641@suse.com> Date: Tue, 10 Jan 2023 10:16:54 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1 Subject: Re: [PATCH] ld: Allow R_X86_64_GOTPCREL for call *__tls_get_addr@GOTPCREL(%rip) Content-Language: en-US To: "H.J. Lu" Cc: binutils@sourceware.org, Fangrui Song References: <20230105210542.3573076-1-maskray@google.com> From: Jan Beulich In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: FR2P281CA0079.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9a::19) To VE1PR04MB6560.eurprd04.prod.outlook.com (2603:10a6:803:122::25) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VE1PR04MB6560:EE_|AS4PR04MB9267:EE_ X-MS-Office365-Filtering-Correlation-Id: 04ad3200-45b1-4132-9baa-08daf2eb6b85 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: r9mkG2rZMNei17HU4k4p3kaR9YR/VBNgcs0m8MAPQfzY+QQyUtX78R6fr93bcnd1nPzo/gzz3vtUzEIpTIM3pqW9tl9TmZsednyuz8iYvpjlWOPC8EJliz07zvf+2p4SXzYkcOhsQRAorfBEVYpdkvv9u5srwU5ReVvLPGa+JOyeqxIxbkcp3HBuBV6+H6Z6DsiTN56Y4OGI/W3YjedBm9Jxnye2a2vxaakmkZatsFDigRkCnzmhZm1M6JJ4xQ99MnpwKXNwrUZHg4uSw8Uz3xaea0pbGr6mHYBBiG1KYk4G/v1wTSZHYa5Vao4nohrDTcWGZTV7Ds3xYxG6TDsjlRnEWFHrt25yiE4IlWXQacgQgKHcKuIolV+Zr5yx3WULoB8dxRipc/yulBky62XqYMTC8Ro6PoN56XRC8WCE8pt4FUQoMK+ZlQv1Fbcgn3ptteHkMcgUOszm/t1b3scM5sSnoKLk/PH33MSrWi4uvyoR/mgVORHbC8PGwLMJSULPKU3YRYSZa4psHTxR74o74S7I+hS79lpVXtMQ5y10RgdKVOhfrhK58RVfSnO3f7vMO/6W0AJZdUunS4cuoMRFgOCHRAOdmt6gaFtj6P7vHcW9VwRcEDULM1e3WozzFt0pq62w1EFHe1mKe7O7ipkTzGgBA1dHJvDlXkBd/R/1gJ90aGYr5zpk/D/38fohDDWfWcofOtFHtyXMnJIEF00GzYU3cpc1NSvOj7dhvVDWqfg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VE1PR04MB6560.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(346002)(376002)(366004)(39860400002)(136003)(396003)(451199015)(6506007)(38100700002)(31686004)(53546011)(2906002)(6512007)(478600001)(2616005)(6486002)(36756003)(186003)(26005)(316002)(5660300002)(8936002)(83380400001)(86362001)(41300700001)(31696002)(66476007)(8676002)(4326008)(6916009)(66556008)(66946007)(45980500001)(43740500002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bTlEUFNJWFg3RDNQZjBFU0kxdGtUK2pZeGNOVnFILzlKNXMwLzduZDJZUzlo?= =?utf-8?B?aFptUWNleGhmTGRFekkxcGRzNWU4ME8rWFpiOUNURnNsdi9xRFJmb3NvOVFw?= =?utf-8?B?MU9nbXQweGI4d0RtMWFlV0F1TmNNc1Z4ek1paHQ2QmpQL001MUFjRHMxNW42?= =?utf-8?B?aGhCMXJlNnBnVUFtRnNEWUM5UUlmcDJ4aGNmOW9JeWVwSlNXcVR2c0dxNzNV?= =?utf-8?B?YmJLZTRHMS81MnUyQWdRYjdTSlhyUS9nZ29qcFM0YkpuTVhaaXJDb2pDclJw?= =?utf-8?B?djJUWlN0aHdoSmRGY0JaVzRtNC9ENkFDMmtjMHN3RDJHNTdTNUVNeDVlcW44?= =?utf-8?B?QXNpekxZTm5zYmNjUFZXdjhSTUFPQW5Fa1A0NWxPaE51cHZKNGI2SmJiRzNP?= =?utf-8?B?MlRMYjNYR0tENmwvOWxpbWlFM2ZRaVg5cFdiU0tKRUlzaXpJYSthQzJIUVk4?= =?utf-8?B?eXJpcFQxMXExdEsyTnZHQmpDcXBIZzFrc1VoVTJITHB2c0x5Zkk3OGM3MDM1?= =?utf-8?B?anlsWXZmU3g4QnZCc1c2eXNCaGdnUWZpb25vRVRZQzN1bVNJZDF1cG9EWWZo?= =?utf-8?B?TGQwanBTSy92R0cwdDRXbU5Bbklkd1FEZVZQUkxuTGNZUnRvVEt4YVhHOXM0?= =?utf-8?B?WWVlUFlBaG1iZ3BQeVY3aXZ4T0MzMENtbGxyQ2dsWlozaEdDOVRob1F0Zy9I?= =?utf-8?B?dXQydEcrMG9OUnVITVorTjBDWTVtQzhEbnArMVBtbGJMblBPY1RCRkdyYWla?= =?utf-8?B?NVJSYzYzNDVPWlZyR1c0eDBjS0VXOUxwUjk3MGVpek1YNDlJSnNyV1AvcXpR?= =?utf-8?B?Y3Rmd0VrN3VwVjQvU0srTXVGU3gzZXZvcmRvTU9zaDRKbllkN1JiRVg1WHdt?= =?utf-8?B?RHdzRERqTmR6d3pXeHhXZllOWFV0Y3VQeWdKNnJlTU5KQXJ4SGFrSU5pSjh1?= =?utf-8?B?MFoxSkpBSE1ob3FkSG1wWmxpS3lTS2xHc2s1czRXdGZBdHg4bjR1NkVJOXRL?= =?utf-8?B?ZEhWcnBsbFhuSVdSM0Z5MnJqWU4wUEVwZ1NjZVhoS2RWeFJ0Ung4RlhLVm56?= =?utf-8?B?RHl6dURHUUlPTzVidGNsT3dSYXo4dkoxVTdIMndhYXNjd2VBMTFZTGtXOXNH?= =?utf-8?B?VlN0amZVbjJFeTErL2VIU09MRWY0MktYMlhDaTRBQWFmcENzNEsrZDhDQ2I4?= =?utf-8?B?UHN4UHdOcTNadEJaSEt5RE9GZGpjWmdVM0QwVGpaOU90TlRHcTZsS0FFbGZy?= =?utf-8?B?Ky9NVnRiOHRNNUtQMUNJM2pjVmVSNnJDM1pzZWdsTHcvYUVXOFRJc0pNYk83?= =?utf-8?B?ZHZkeFhOMmg2bVVvNlNzZmpwQWxMYktRaFl1WUkrZXJpOWpocjB4TldHWWJ1?= =?utf-8?B?b1A4enhaUk5nVDA3RXg5YUV4ak1MMklDdlFsL3ArMnRyVlZjaVZtdy8zUHI1?= =?utf-8?B?YmVpd2tGcEtvV0FqZFFTbytWVzY1R202K1dIMTJYOEE3WitBNkc2aVkwUzY4?= =?utf-8?B?cVlacWRnTnlQK3VGamVpQzZiT1hxN2pzWDRLcVN3VllWWEFyVndIaUZPTUFX?= =?utf-8?B?V0t2NDRZTVpNTnYyY0hFSVIrYkN0U0V6TDVJaFRoendBQUhpUmZkcnlIbVFV?= =?utf-8?B?NGNFeW5GdGFYVENFaXR0dlM0RnFTS2VrTWxtVk9JaDV1dFRsSUpBbkQ4TTEx?= =?utf-8?B?UTVwNFBGQkowZjFFT3ZDRk4xcG5Wb2FRdngva1IySVd4Qnk2VTBCS1EyazNI?= =?utf-8?B?NlZadUZiV1hoVklJaThZejhCL09HQUpVRENOVEJlYkM3c2lMcEx6R1ZmSVJN?= =?utf-8?B?TjR0UjIwbWRHalFYOC9LM1FmZW5TczBCeWcvUTVsajFVS3B6eGdEcWE5V1Ex?= =?utf-8?B?emtZWEg1eldOQWxOTXNoM2tSQzBudCtna3BuL0NsYWk4V2tDSklUM2kza1JN?= =?utf-8?B?TTdhVG1pMUo2dFNyRjM1LzdMdGJRYi81dUU3cVV6cVpyMmVORTBXc1ZDUFpI?= =?utf-8?B?ZjZRWUo4UVpWRlQ3VmpJZHR0TFRXOHM1a3hVaHc0K3Y1OVZFNEVTY09EeUpT?= =?utf-8?B?bmswQ3hib0REbXhXUDhDNDdvMU5DRmg5bFp5VFc4RnZSZ0diQ1FiaXBOVjlt?= =?utf-8?Q?49h7uG6QTFywvbpqwO7f3Al7H?= X-OriginatorOrg: suse.com X-MS-Exchange-CrossTenant-Network-Message-Id: 04ad3200-45b1-4132-9baa-08daf2eb6b85 X-MS-Exchange-CrossTenant-AuthSource: VE1PR04MB6560.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jan 2023 09:16:56.3688 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: f7a17af6-1c5c-4a36-aa8b-f5be247aa4ba X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: AypWO7npyN6LuZrRxzpgSpTPFa7Aa+5JwYwaybWOHGPXIE1tCZSHRCeMKPxsMqfENvZeA+gEHsvaLJj23ALoOg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR04MB9267 X-Spam-Status: No, score=-3034.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,NICE_REPLY_A,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS,TXREP autolearn=ham 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 09.01.2023 22:14, H.J. Lu wrote: > On Mon, Jan 9, 2023 at 12:15 AM Jan Beulich wrote: >> >> On 06.01.2023 18:03, H.J. Lu via Binutils wrote: >>> On Thu, Jan 5, 2023 at 1:06 PM Fangrui Song via Binutils >>> wrote: >>>> >>>> _Thread_local int a; >>>> int main() { return a; } >>>> >>>> % gcc -fno-plt -fpic a.c -fuse-ld=bfd -Wa,-mrelax-relocations=no >>>> /usr/bin/ld.bfd: /tmp/ccSSBgrg.o: TLS transition from R_X86_64_TLSGD to R_X86_64_GOTTPOFF against `a' at 0xd in section `.text' failed >>>> /usr/bin/ld.bfd: failed to set dynamic section sizes: bad value >>>> collect2: error: ld returned 1 exit status >>>> >>>> This commit fixes the issue. >>>> >>>> PR ld/24784 >>>> * bfd/elf64-x86-64.c (elf_x86_64_check_tls_transition): Allow >>>> R_X86_64_GOTPCREL. >>>> --- >>>> bfd/elf64-x86-64.c | 2 +- >>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>>> >>>> diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c >>>> index 914f82d0151..095fe2e0fe6 100644 >>>> --- a/bfd/elf64-x86-64.c >>>> +++ b/bfd/elf64-x86-64.c >>>> @@ -1241,7 +1241,7 @@ elf_x86_64_check_tls_transition (bfd *abfd, >>>> if (largepic) >>>> return r_type == R_X86_64_PLTOFF64; >>>> else if (indirect_call) >>>> - return r_type == R_X86_64_GOTPCRELX; >>>> + return (r_type == R_X86_64_GOTPCRELX || r_type == R_X86_64_GOTPCREL); >>>> else >>>> return (r_type == R_X86_64_PC32 || r_type == R_X86_64_PLT32); >>>> } >>>> -- >>>> 2.39.0.314.g84b9a713c41-goog >>>> >>> >>> Since the new TLS sequence was added after R_X86_64_GOTPCRELX was >>> required for call, R_X86_64_GOTPCREL should be invalid in this TLS sequence. >> >> While this may well be, would you mind pointing out (more to Fangrui than to >> me) what bad his proposed change would do? > > The problem is caused by the combination of -fno-plt and > -Wa,-mrelax-relocations=no. > -Wa,-mrelax-relocations=no was added to generate object files to be > consumed by the > older linkers. On the other hand, -fno-plt requires newer linkers. > As the result, > -fno-plt -Wa,-mrelax-relocations=no generates object files which > aren't compatible > with neither older linkers nor newer linkers. > -Wa,-mrelax-relocations shouldn't be used > together with -fno-plt. Imo use of such option combinations should either be disallowed (warned about at the very least) or produce sensible output. I guess only the latter would help Fangrui ... Jan