From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-eopbgr60052.outbound.protection.outlook.com [40.107.6.52]) by sourceware.org (Postfix) with ESMTPS id 85E72395C416 for ; Fri, 9 Apr 2021 13:38:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 85E72395C416 Received: from AM6P195CA0033.EURP195.PROD.OUTLOOK.COM (2603:10a6:209:81::46) by VI1PR08MB4543.eurprd08.prod.outlook.com (2603:10a6:803:f4::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.32; Fri, 9 Apr 2021 13:38:29 +0000 Received: from AM5EUR03FT007.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:81:cafe::63) by AM6P195CA0033.outlook.office365.com (2603:10a6:209:81::46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend Transport; Fri, 9 Apr 2021 13:38:28 +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 AM5EUR03FT007.mail.protection.outlook.com (10.152.16.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend Transport; Fri, 9 Apr 2021 13:38:28 +0000 Received: ("Tessian outbound 700fd1fc53d5:v90"); Fri, 09 Apr 2021 13:38:27 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: b1b263a07ad1397b X-CR-MTA-TID: 64aa7808 Received: from f0f40c4975ee.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id D96ED8F8-F348-4338-9231-D69E8004CFC3.1; Fri, 09 Apr 2021 13:38:18 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f0f40c4975ee.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Fri, 09 Apr 2021 13:38:18 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=juTx84wxaawC2FopnJDaseMGVvAQ/lg9dv3dgAKj0qKt2OZdKz8w6f63K1CJqDVilGHYZQ7YqQ4DrqYQ0iMKTBVBcReWTJwahrC95XdAK8ecM6mdKKFtaBbQmBHza1BDmdJnc5ou4OwUob3fFd182qGQKUKVtTR0tBAUYLRymyjtLsnORlKw9svWWWqHckgqoWauAqYrgIxjSlWruEWEM1RsWnWvmZp9yAE7+VSI1KmGSoCUW0FIaIqJIWrnzJdegyfGTw7J91cgDykF0oNiUsTBJDwLG/PsLrrZ0H9rcZy8ezc4RQIjny2ztgDrViwLDy5LDK6muyp+3loqG9DkxA== 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=tQgN5kZybUhhlKs6pAED0KoMkn/LZyN5szUEbA3LeUE=; b=FUSt9EiiyMb89nJ3ch7WkpLpd/BhHSb+Ehd5lGFnG+VvI+9IMmfBJ/O+Sdul7lUHDbefouD4eAF8mxtlw7Va3OnFJ+fkqv7ivNGAQpWBq3DijsYZgCWNAGHXGJGGGdmUGp7co8eNKSpn5t39nwrJwu13KmD+8XmhRsJLiT19IEjhBjJgMbblO7sA1vgwhE5gBoJOb/WbqxWcLGhJr5LEJ+fsj5LHc8OuKyPQ/gzuQvTx/hZETZurmgDz9O1j/eDE6QRv8CFNH8Y86jS0nHJzDGC9DcjLBv2gC3YsoWMF/VWW9DO5zY45oh69Z01px9dLLmpp7HwZeNyzi6oFCVye0A== 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: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=arm.com; Received: from PA4PR08MB6320.eurprd08.prod.outlook.com (2603:10a6:102:e5::9) by PA4PR08MB6144.eurprd08.prod.outlook.com (2603:10a6:102:e3::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.20; Fri, 9 Apr 2021 13:38:17 +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.4020.017; Fri, 9 Apr 2021 13:38:17 +0000 Date: Fri, 9 Apr 2021 14:38:09 +0100 From: Szabolcs Nagy To: Ben Woodard Cc: libc-alpha@sourceware.org Subject: Re: [PATCH 11/15] x86_64: Avoid lazy relocation of tlsdesc [BZ #27137] Message-ID: <20210409133809.GR23289@arm.com> References: <8c6dae9ee45f9af51ce70cb8422582096dbf7ffc.1613390045.git.szabolcs.nagy@arm.com> <454904D4-36D6-4589-85FD-67094C7F13C4@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <454904D4-36D6-4589-85FD-67094C7F13C4@redhat.com> User-Agent: Mutt/1.9.4 (2018-02-28) X-Originating-IP: [217.140.106.49] X-ClientProxiedBy: SN7PR04CA0163.namprd04.prod.outlook.com (2603:10b6:806:125::18) 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.49) by SN7PR04CA0163.namprd04.prod.outlook.com (2603:10b6:806:125::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.17 via Frontend Transport; Fri, 9 Apr 2021 13:38:16 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 603c6ced-b3c5-4d44-04e1-08d8fb5cc207 X-MS-TrafficTypeDiagnostic: PA4PR08MB6144:|VI1PR08MB4543: X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true NoDisclaimer: true X-MS-Oob-TLC-OOBClassifiers: OLM:514;OLM:514; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: bOk7iuq0It0g3KwHKf+hsBi54mj6pWUk4AQHVVFE+0dSW5oJ0/9k2RD6/u0XYO+/XizjfX10MDPhVyrlsx4dUimv4mVGpDXYcd38J7dMqiNhYrbMgqjaVWPCpfEmvUyvmI0MUxxKBLh1IlJUpEY2kSAxVdykzTMaR5RovRlpZto8a65p663pY0oEEYQEHm5dla+cWHg2zll4Nh9ToYo2iIjIedBxt8tdMGzxiQtTZ1Hsrg4/1YV8nz5jMNHtgNlQGOMM3aoYd5INysJDtcFV2YMJdUSiaaSSkf9DuvQjkRRKHZUO0qJJnLjyEoj3L9+uwrKlGDdZbB5ZhS42AboPcBMZCYau/PBrcdJL8ZjdRkLikN+ECYsxdbSTvsKnRKKyuPcr6mc3F/OMtAcbMTh5Zh4EAkOZtzldgQsPgoJEAq9/t0gDjTScuggjeEe/BHYoILprO7wjoE8NBBPbuwrxWnVygBYE7knPtEp4YXOkdWTmFhWp5fQIGb6dI6mkuC+euq/ly2YB4yjgjaJBXwFkgS7M/p6yDNLxerQxq/M0B7p5goC3XeJmmSKas1Mv0TduuQ+yN8T36w/9n3Ip0nLdMu+Qn+7cP8131f+JpsrTjCNwUMusmMn5aa7/BTAXq/yRoFGnzNkmIIZWAkFZPbOfGM1D+bRd/bLOSNvHYPrtk4UJdS5mV+u8F4FlwkNCSVt9 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)(376002)(136003)(366004)(39860400002)(346002)(478600001)(8676002)(66556008)(66476007)(316002)(6916009)(38350700001)(8886007)(66946007)(53546011)(33656002)(7696005)(26005)(16526019)(2906002)(6666004)(186003)(36756003)(55016002)(1076003)(956004)(5660300002)(44832011)(86362001)(4326008)(52116002)(2616005)(8936002)(38100700001)(83380400001); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?eVJERXc0VU1FdUNQb1BXalh0TGdKanVveXhqN29KbmpMZWRQb1AvNGFwRHhW?= =?utf-8?B?UVh4WG5qNm4rV2tUSmZObDFTTXVXNG1qeFdvUGcwVjZvUjFnMm82WnVZdUVD?= =?utf-8?B?c0FDbUFPSC9tN0xocHo0VSswRWdpMGUxZXNmeVk1NElZWDVvMGVNblEyRGlC?= =?utf-8?B?ejdMVmdwcGpnNHRZSExvTC9Kb3NrSmREM3YzRU9DdzVFVDVSdXhZUG9rT09q?= =?utf-8?B?QTdGQk5sMjVQUnNaQkl3Y0txTmR1USt4WndzSEM0TEtFYUVSVTI5TzR5K3RI?= =?utf-8?B?L2dSRXFHb05vTDdOdWFzV3pzWVgyUWVtbWlGRzZEalRncXN0WmtMWDBLazF6?= =?utf-8?B?YXJEaDZMZmVac2JnaytGTUx6WFZPa05abVVHWTV0Y0c2bVFlN1hxY1ZNYVox?= =?utf-8?B?RHpIeEVDTEpNYjhFT3ZqQVBTV3FXNUVkVzJPK2szeWplMnNBcHBwZ0k0Qmg5?= =?utf-8?B?MjlPaCtqR1gwTjZ2QTl4QndoM0tDaWVYZVhFOTZWSWhMTmx5bUdmWnIzSlhp?= =?utf-8?B?dFB2SG1mNTNRZWczMElvU1FLQWdQZmpSVlZ3cWkxa1ljeC9sWjcxWWd5YzBh?= =?utf-8?B?cmRGUjV2b1duSVZWNlJ4OHlFS2pyazV6L0w0N2hSNTFxUlVjQzJPWFllOThQ?= =?utf-8?B?N1JRbG5nUXpGL2NSUFl1Tk10MjNpWWpqcExTOVU3WkVxUzZzNDh4Rm9MMy9v?= =?utf-8?B?N3RXaXZNd2FNdlhiVm9PYWJVanVKbysvek1zYUgwWkdYVWI4R3EwazRMdEFG?= =?utf-8?B?bU1ZM2xBbTVqS2JjdzAxcGVETlJHaFJLZ0puUTJuM2xxUU1ZSzErNmVoMVdn?= =?utf-8?B?RE9sTHFaTVNlOGd6bWtZM29pdjdnWFl1cEoxc1M1dFJXeXdoU0NaV0tOK2xR?= =?utf-8?B?dTJvd1RCTFMrZURaMXNrUWdsNzlZU2ZUWkpWQ1NqZ1loM1lsOUZkdlZNYmFo?= =?utf-8?B?SjNTL2wzWnFmSC84VXFXU3lVUllSVXJ6NGFyQ1NIRWh1SnpXTERNbFN3M09s?= =?utf-8?B?bEY5bmJYOTc2TGtvZ3VlRDNhZnhWSzg5eGJIYnlhZldJd0Mvb3dpTUNBT1JI?= =?utf-8?B?ZTVwelJLOUpNMGhOVUdMNUh2ak5ha0VJOG5JZ3B1d1gvcEQ3cDlNQXhLTlRX?= =?utf-8?B?bHFESk5qUGs5Njk3azFqVENidDg2WmMzcldMTlgvN0dlaFdLeENkeVpCNTdK?= =?utf-8?B?Mzc4bE13RTl6Mjh6cUs5YXFBOThVVldINVdCR3RDTmZCUHpEY2dRTXlSdFdF?= =?utf-8?B?R0RHalJEbzhScnFPbERMY09SMHVnalNSdlcvelFhZlQxRXpEUGJoYThCdG9F?= =?utf-8?B?LzlmMTRxbUxQSmRqdFBZeDJGaWwzMW5mT0VraVA3bXVweTcxcGY0M0hUOGxs?= =?utf-8?B?eWkwL0pXZW0rU0FxTktra054bnlTaTg0UnNCUXFCdElKRnMzMzFMYUJTSlpu?= =?utf-8?B?dEphbDlBb3BrZ0RpY1YrQzc0YmRVWHpZNXZ6YlFFaUhIdVpHWmpFMVhDT3M2?= =?utf-8?B?cmdQUlUxSUhoUG14L1hMSFVRTENRSitkcHpqUThMb29nQXBNcFVYbEJKZy9M?= =?utf-8?B?WXJZNjVxTXNrdENRTGtsUmVnUnBaWDh0Z1dYRHQ0bzZYQWRxczd6NFRPL1NE?= =?utf-8?B?Um5HN245ZHdqcjgwdGxNVGRqdzd5dHVEa0owNDNwY1JQWEszUklaaTcrUnFj?= =?utf-8?B?N1hUdU1MZ21id2lmNGhrZ3FhT3d0aDE0NUdhVW1zQnU2bTN4cWt5dS9ROGZw?= =?utf-8?Q?17bRolfjb4ilPpaN3s4ZtBNNlJxHPm54OOFzFrp?= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR08MB6144 Original-Authentication-Results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT007.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 2f6d4809-88e0-4201-3763-08d8fb5cbb47 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qpygTE8jqv4cnOmmAsjKXVaB0FkYIxjRKCCtv0kB2uBtonHZ2XfbV1zrLqdjl37K2jU03XuCXhAhZlMZyWO7zTJsgt3Yre2UjZfGSDKru/Rd5oeFHdi8AGWC46vBwyooHxDZ2/abSFAZE0M+2K6y1Co6KDMKD1pk6D7unr5CxC2YmIKs6NGzjwMFLqJ0c8NqN84W/xmsyCsDUI6h15/O7P+32SgIVjRVaaN8IkuZ9SRggUfQM7jWXtaMCSH+dLqX7unkcOcbelwbU7+nBCbJilWySyYKGgacEmbe9CMZpD+uhpHonsbyfhT5qoohEfaahNmxG3hSAhwuaF4JXWq0vBcaEkoo6Xe9hETONYcJfq5mzDPCjLWOXJXgVHu7RIrnCjsXbbvv7EJt6JDRc3ROWrXlXzDyQYpvUPTmvSZe7VAO/BF5lfUDCHEJU9c0c8NSsKqdA6Sbu2nSSzSPbxfAmezSmgOhTlHJAzLoylvGIvzuUCXipR4gHR3fKOabEwCs6uan//Assite7+I3l69Meg2fTAP+vKF9i4lPCoN1TUcewYFZLkbY82o884cZZ3pZThA2hS4AkBMilu+lpTelGLuqZv0kpmAbX0jaqEvg9lSvi+TiBJQXqMIDnFUs6mPQhQtJZwNB63l9EQby64nAjwE6jMxvUIIc1gT7VVqipkM= 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)(396003)(346002)(376002)(39860400002)(136003)(36840700001)(46966006)(478600001)(8886007)(33656002)(2906002)(26005)(4326008)(7696005)(186003)(16526019)(6666004)(55016002)(8936002)(356005)(53546011)(83380400001)(6862004)(36756003)(1076003)(81166007)(70206006)(44832011)(82740400003)(316002)(82310400003)(5660300002)(70586007)(8676002)(36860700001)(2616005)(336012)(47076005)(956004)(86362001); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Apr 2021 13:38:28.3178 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 603c6ced-b3c5-4d44-04e1-08d8fb5cc207 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: AM5EUR03FT007.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB4543 X-Spam-Status: No, score=-14.2 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: Fri, 09 Apr 2021 13:38:38 -0000 The 04/08/2021 17:14, Ben Woodard wrote: > Don’t you also need to modify elf_machine_runtime_setup It also has a reference to _dl_tlsdesc_resolve_rela that becomes undefined when you try to compile with your patchset including patch 13 where you remove the code. > > To make a test build I just commented it out but I think that this patch should remove that if statement as well. thanks, indeed this was wrong, i tested the wrong branch on x86_64. i will fix this and post a v2 set with the other feedback. > > diff --git a/sysdeps/x86_64/dl-machine.h b/sysdeps/x86_64/dl-machine.h > index 9a876a371e..2b1b36a739 100644 > --- a/sysdeps/x86_64/dl-machine.h > +++ b/sysdeps/x86_64/dl-machine.h > @@ -127,9 +127,11 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile) > } > } > > - if (l->l_info[ADDRIDX (DT_TLSDESC_GOT)] && lazy) > - *(ElfW(Addr)*)(D_PTR (l, l_info[ADDRIDX (DT_TLSDESC_GOT)]) + l->l_addr) > - = (ElfW(Addr)) &_dl_tlsdesc_resolve_rela; > + /* Lazy binding of TLSDESC relocations is no longer done so this logic > + won't apply */ > + /* if (l->l_info[ADDRIDX (DT_TLSDESC_GOT)] && lazy) */ > + /* *(ElfW(Addr)*)(D_PTR (l, l_info[ADDRIDX (DT_TLSDESC_GOT)]) + l->l_addr) */ > + /* = (ElfW(Addr)) &_dl_tlsdesc_resolve_rela; */ > > return lazy; > } > > > > On Feb 15, 2021, at 4:02 AM, Szabolcs Nagy via Libc-alpha wrote: > > > > Lazy tlsdesc relocation is racy because the static tls optimization and > > tlsdesc management operations are done without holding the dlopen lock. > > > > This similar to the commit b7cf203b5c17dd6d9878537d41e0c7cc3d270a67 > > for aarch64, but it fixes a different race: bug 27137. > > --- > > sysdeps/x86_64/dl-machine.h | 19 ++++++++++++++----- > > 1 file changed, 14 insertions(+), 5 deletions(-) > > > > diff --git a/sysdeps/x86_64/dl-machine.h b/sysdeps/x86_64/dl-machine.h > > index 103eee6c3f..9a876a371e 100644 > > --- a/sysdeps/x86_64/dl-machine.h > > +++ b/sysdeps/x86_64/dl-machine.h > > @@ -570,12 +570,21 @@ elf_machine_lazy_rel (struct link_map *map, > > } > > else if (__glibc_likely (r_type == R_X86_64_TLSDESC)) > > { > > - struct tlsdesc volatile * __attribute__((__unused__)) td = > > - (struct tlsdesc volatile *)reloc_addr; > > + const Elf_Symndx symndx = ELFW (R_SYM) (reloc->r_info); > > + const ElfW (Sym) *symtab = (const void *)D_PTR (map, l_info[DT_SYMTAB]); > > + const ElfW (Sym) *sym = &symtab[symndx]; > > + const struct r_found_version *version = NULL; > > > > - td->arg = (void*)reloc; > > - td->entry = (void*)(D_PTR (map, l_info[ADDRIDX (DT_TLSDESC_PLT)]) > > - + map->l_addr); > > + if (map->l_info[VERSYMIDX (DT_VERSYM)] != NULL) > > + { > > + const ElfW (Half) *vernum = > > + (const void *)D_PTR (map, l_info[VERSYMIDX (DT_VERSYM)]); > > + version = &map->l_versions[vernum[symndx] & 0x7fff]; > > + } > > + > > + /* Always initialize TLS descriptors completely at load time, in > > + case static TLS is allocated for it that requires locking. */ > > + elf_machine_rela (map, reloc, sym, version, reloc_addr, skip_ifunc); > > } > > else if (__glibc_unlikely (r_type == R_X86_64_IRELATIVE)) > > { > > -- > > 2.17.1 > > > --