From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2076.outbound.protection.outlook.com [40.107.20.76]) by sourceware.org (Postfix) with ESMTPS id 51CFC386F448 for ; Tue, 19 Jan 2021 18:25:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 51CFC386F448 Received: from AM5PR0201CA0017.eurprd02.prod.outlook.com (2603:10a6:203:3d::27) by VE1PR08MB5871.eurprd08.prod.outlook.com (2603:10a6:800:1ae::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3763.11; Tue, 19 Jan 2021 18:25:20 +0000 Received: from AM5EUR03FT035.eop-EUR03.prod.protection.outlook.com (2603:10a6:203:3d:cafe::3b) by AM5PR0201CA0017.outlook.office365.com (2603:10a6:203:3d::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3784.11 via Frontend Transport; Tue, 19 Jan 2021 18:25:20 +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 AM5EUR03FT035.mail.protection.outlook.com (10.152.16.119) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3763.12 via Frontend Transport; Tue, 19 Jan 2021 18:25:19 +0000 Received: ("Tessian outbound 4d8113405d55:v71"); Tue, 19 Jan 2021 18:25:19 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 1e7541919ea51c29 X-CR-MTA-TID: 64aa7808 Received: from 93d23099a9a4.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 69297B43-9669-40C1-B2C2-B8CE475CB52E.1; Tue, 19 Jan 2021 18:25:13 +0000 Received: from EUR02-AM5-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 93d23099a9a4.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 19 Jan 2021 18:25:13 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hbiQdEXHTQMgenx9ItPqNT9JCxOiT+c20m/i1pbSPHmV8kfQv79QBNmnTZ0F1YNb+h5y/QSkkeFHDKdwWTAkKr93fm9Bmuott29axNkr4IQQtuGeMq/f5EVnHDyoOWs5nCtG+qtjol4c8Hhno7X6PwIkIiCsLudsQmzHa0Q+Go/QR2w3CjthDVDVOnsLCa2HsF3BYGWDmROwpeE/UgjHCfsEYdm9agAkz/drgQgsu+l1iIuRr0RM+Geyofn9/cxAK3yEU+i0p5EBgPSR4HzeTLTEMLRCYgo8srpS+RnGS6vljpfPxkfCa1ygASGsCEuj45U3eqa8NUbD5l+aOHGRQw== 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=eguom2adzoPkGZUPxsnfFzLfu8LX2c4+wrCiDshY7s8=; b=jXDcALoXPSsO77SR9exnTxqPiulSWAnTH3mBdrLefBmSP1qmJkK1V7sYZSMdRQHcmfhxVsMWEKeNL4wwZceZ4sZJn6gLJte/jrzT4cfAyK09JMUf7koIO0uYuL0aIzz5Ps2Xb7ZZfCpSxY+tV5Pyn8kHISXDvjyNcDezR0mnPm6ZnKTxiTKsS5iRnDapP43rA/9VRHvLB/gHf/c0t1WRnKUhxRg+Fi/tEA8hthFicdvgQe3foie0Ls4bmk8cd3S0LQLqm9+W3bhf0pLZlMCZgNefziSpVNYQSGP/+lP9ICICmcoXIUujfi5lch1WwggUg5BtDTvEQMrClpJZBaC+eA== 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: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=arm.com; Received: from PA4PR08MB6320.eurprd08.prod.outlook.com (2603:10a6:102:e5::9) by PR3PR08MB5803.eurprd08.prod.outlook.com (2603:10a6:102:82::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3763.10; Tue, 19 Jan 2021 18:25:12 +0000 Received: from PA4PR08MB6320.eurprd08.prod.outlook.com ([fe80::700f:ddbe:a347:ee4f]) by PA4PR08MB6320.eurprd08.prod.outlook.com ([fe80::700f:ddbe:a347:ee4f%7]) with mapi id 15.20.3763.014; Tue, 19 Jan 2021 18:25:12 +0000 Date: Tue, 19 Jan 2021 18:25:04 +0000 From: Szabolcs Nagy To: Adhemerval Zanella Cc: libc-alpha@sourceware.org Subject: Re: [PATCH v4 00/10] fix ifunc with static pie [BZ #27072] Message-ID: <20210119182504.GG3445@arm.com> References: <9f68b24a-437c-db8e-d1fa-b26d2e06d103@linaro.org> Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <9f68b24a-437c-db8e-d1fa-b26d2e06d103@linaro.org> User-Agent: Mutt/1.9.4 (2018-02-28) X-Originating-IP: [217.140.106.53] X-ClientProxiedBy: SN7PR04CA0037.namprd04.prod.outlook.com (2603:10b6:806:120::12) 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.53) by SN7PR04CA0037.namprd04.prod.outlook.com (2603:10b6:806:120::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3763.11 via Frontend Transport; Tue, 19 Jan 2021 18:25:10 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 438258ce-11de-4ff5-9bb8-08d8bca793de X-MS-TrafficTypeDiagnostic: PR3PR08MB5803:|VE1PR08MB5871: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true NoDisclaimer: true X-MS-Oob-TLC-OOBClassifiers: OLM:10000;OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: LEQCoQHTvcYXnaOvUwUgEdHWB2R0qyoGqOPofej4USfNwiLGxGYP/x32+Hy85IU5gUCeQ7FVIK0jnyXvptnD1jG4StZI9+2ntoXcImjB3NqEVNwft6Pt7MePYW/pIe5qFY52JnqXCydNRc6xs7LQ7K3eNQVEVgRycYPuzH+nPYBX63tkNkKJL8+tUf+SndpWQvFfkwxxx+3175CUTf1U6OBqF3CeWAy/fSghd9QhqNH8b59zKAY9fMrNkWGfkXclbAypL6GqmGEptkOPTRkO5TDi4zIPby1IkXFjR85aOjTsJZF6PXKtaJjaQjFmm8/6vAYng6qWSJ7rC2hFufa5b5kY0tljvLcAEKEN7DPNn+udq7naF7WESk2dX1viKxM8CIRu6hyZQIBTdxiI6KVrCBXSLFOxYYc+Qt+HEQFh14uEQ98Yl1No+PM/6WldWpVM5d/6x6BKb0A674Tnhiu8ordsf6End5w8gt9fHoWxruzdiRLXJYmMAHRYevRwYyLY+5Ea0MPN2plCFOAQ3TwZ/AYTmZJSj0oV8kWJRiOpFtmwWjzjbIzWSwsD+wQiTsIbsiTBfYnOiy35P4HmF7f6CRtBaEP7H371k+eNz/C09mI= 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)(346002)(396003)(136003)(39860400002)(366004)(376002)(4326008)(956004)(8936002)(6666004)(7696005)(66556008)(86362001)(2906002)(55016002)(8886007)(33656002)(2616005)(44832011)(53546011)(966005)(6916009)(83380400001)(36756003)(26005)(66476007)(186003)(478600001)(5660300002)(66946007)(52116002)(8676002)(16526019)(316002)(1076003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?VVc2WGprNE5xVGNJd2Z3eTZjT0QyWnZpWUpvNjZVT1ovWGxBRDRweGtrQU9I?= =?utf-8?B?cXVXS2hSRjZvdlYzVjlSNDBlVytHZGVwMGN2ZmhLZnlNMGsyL213L0ErUDVD?= =?utf-8?B?WDZNQkVJam80c0xDTm5lQ0ErbmlUSWxSQUxxQ2VHNDVvNS9aZVJLdzBUd2FC?= =?utf-8?B?d2tMVGNiRFNQNG9LYTlSQlRJUTJLSVZNUlRJeUlnSVpqcHVDajN6NVJFTFUw?= =?utf-8?B?d20xTGhlQVVja2pNa1FjNnZSNEhTWlQvVGhBUThZdFZob2loNGVaS2xLWGRX?= =?utf-8?B?Zm0rczNVSUVQNGljUFlhVEFna3dkZ2JEeDgrYWYxMkh1ZzkwUnpiYnV3c2ls?= =?utf-8?B?STZPakF2Y1VGbEJsVGdqZ0JEY2UyZFRuRVNFc3hDd1U1ekhkN3g3SzZrOFBM?= =?utf-8?B?RWgzbUxoUGFSRFJWRHVhQ01VWFUzRXp3cnhKMzVleGk4NGF6U2RFb1JLczhS?= =?utf-8?B?cGZMOXNjUFZlRU8vYWJtR2JIQWZBSGhtRjgrM1AyeTVXd2xrNzFiODUzWW5B?= =?utf-8?B?MXlNQnQ3eCtscGFndDduaXRJNThBYmdoeWNoL1d0TTVwSWlPaWNMMXMwUXlU?= =?utf-8?B?cXh3VnpkWkVIOTAwYUNLWm44VHRpVWl3WHJTM3lieGdBekFVODhYRGVWbW9F?= =?utf-8?B?bU5aV0VTYmtoYTZUZExRc2drS2hBMGx5d25XM0I4eW9JV0NPbkt5VGg1ZzB1?= =?utf-8?B?alpYbVQ4NlBsaFVzdWY0RzlFNnk2RzdHVXlOL2tKSEFKZUg5by9zNFc1Z0FI?= =?utf-8?B?bHpUQ2puRnduS3k0SUtRbW1WeUFDWTczSjdmeDkwVDQ1RlZ3cEpxUWVwTXFV?= =?utf-8?B?S08wdXVJTEFvY3lVTit2OXRsUDh4SndxdGRxUFFzbjVkbzFmMUEzME5TcTk5?= =?utf-8?B?RmJJdlluU1JtL3NFcW1JaFdKZnNTaHdiU0RBbEY1TEZYaGxvUi9TdS9pTEJX?= =?utf-8?B?VUV2ZUhVWkJ3YThKSS9wdjZ0ZzJlWlN5RXkxdk1HUjdVeDJBc3hUbUgwUGRq?= =?utf-8?B?aWNqa2MyQXRRUGJrYWlYTzVQamQrYVJzR0ZYb0dtSG1sVUtJZ3dlY1phRE1U?= =?utf-8?B?VjhXNmdyT2xFeklSUTdkNmRVY1FvQmxVS3NyMnBHcmhrRXdrc01BR09xNkF2?= =?utf-8?B?WU4wYzlFL0FTeUN1VmZYK3NCcjl4dzdGVGUrZHJHZHhCREIxek1DcW5rQ3U1?= =?utf-8?B?ajdOS05kSDRUcTlKRm5sQnBBbnVtc1FCemZ3VW1HMEYwMzNUMHlOOUtOeWhE?= =?utf-8?B?QXRURkt5Qm5TenNSeW9HTzIyU2JlVW1wU2JGOE83WGxFczJ2ZkN3TnZtdnZN?= =?utf-8?Q?vjGvsEVleGqkVezd2nT/+fRMNRcu3Is6tS?= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR08MB5803 Original-Authentication-Results: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT035.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 76f79399-562d-4420-0112-08d8bca78f1e X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: zr2Thaf2E0l0vwCsweYcXYmCDiAgDCzmh8YktfGZGXQbGxQkURN1Xm3rSBeOUuKzavvB8tqmLEpzp0j0zk9t6GqPylTvtj7e6al/AFhEd8fUiuoXCK910ERaCoB/i9DXTv8oA+5mCbd4bS386K5gdbBT+LaxPTB0qJHwHt+5UawOJBCbndnJfYbMMEzaRhLImTc+CJaTMgT3u4VNFgLxCurwH6eHBUq3BKSbXNN23nd10fIX7jr7zq9HOlY6cPFlNU34fChSfLG7J+yX5mT7lxVfIi0XVMdn3eEAEBc2STsVtul4WDbFzEoPWdBJNuZcl6CTc4PgyVvXtunBjyfZAcXV8A7uI1XAVuVVnAJHira9bwjGxgOXfwRFbfyp926QX+JPW/3ZLM1hOp2nD5JWU7q5oipzPRAlSDKgKJRaPt0uuWFKVCPGYwLe+pdw3XgeBxjjRvUv7bkB4/zzs+N1HrNxZLZKD6PjrhVJkfe5Ztcwtf3YuLlG6qQhZ/NceDEySZTtQ4QoEOkWFS2qJwjAbXHwBbJUChU/+l/h2wgIzlw= 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)(376002)(346002)(136003)(39860400002)(396003)(46966006)(81166007)(8936002)(8886007)(478600001)(70206006)(956004)(4326008)(7696005)(82310400003)(966005)(16526019)(86362001)(53546011)(1076003)(336012)(186003)(70586007)(83380400001)(356005)(6862004)(36756003)(33656002)(26005)(2906002)(44832011)(2616005)(47076005)(6666004)(316002)(82740400003)(5660300002)(55016002)(8676002); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2021 18:25:19.8715 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 438258ce-11de-4ff5-9bb8-08d8bca793de 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: AM5EUR03FT035.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5871 X-Spam-Status: No, score=-8.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, MSGID_FROM_MTA_HEADER, RCVD_IN_DNSWL_NONE, 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: Tue, 19 Jan 2021 18:25:26 -0000 The 01/18/2021 18:37, Adhemerval Zanella wrote: > As a side note I tried your branch with a build for all support Linux > ABIs and it as least improves by issuing an error on architectures > where previously indicated support static-pie but it is broken in practice > (powerpc for instance [1]) > > So currently static-pie are support for all architectures, however it > fails to build for: > > alpha-linux-gnu > arc-linux-gnuhf > hppa-linux-gnu > ia64-linux-gnu > m68k-linux-gnu > microblaze-linux-gnu > riscv32-linux-gnu-rv32imafdc-ilp32d > riscv64-linux-gnu-rv64imafdc-lp64d > s390-linux-gnu > sparc64-linux-gnu > sparcv9-linux-gnu > > By requiring PI_STATIC_AND_HIDDEN hppa, m68, microblaze, mips, nios2, > and powerpc fail at configure. Some architecture still fails at build: > > alpha-linux-gnu > arc-linux-gnuhf > riscv32-linux-gnu-rv32imafdc-ilp32d > riscv64-linux-gnu-rv64imafdc-lp64d > s390-linux-gnu > sparc64-linux-gnu > sparcv9-linux-gnu > > I haven't checked if mips is currently broken for static-pie (since > as for powerpc, it does not define PI_STATIC_AND_HIDDEN); but I would > expect so. > > It would be good if we could avoid building the broken configuration > and warn it on configure, but I don't think this should be a blocker. > The NEWS for 2.27 states this features is only supported for x86 > and aarch64, so I wonder if would be better to just enable it for > the supported architectures instead of relying on PI_STATIC_AND_HIDDEN. i randomly checked alpha, which fails while linking sln: elf/dl-reloc-static-pie.c:40: undefined reference to `_DYNAMIC' i think this should be possible to configure test in case others targets fail in a similar way. > > I will finish review the patchset tomorrow. > > [1] https://bugs.gentoo.org/719444 > > On 18/01/2021 13:22, Szabolcs Nagy via Libc-alpha wrote: > > v4: > > - added patches from H.J.Lu: > > - x86: fix libmvec tests > > - x86: fix syscalls in libc_enable_secure > > - x86: avoid relative reloc for _dl_sysinfo > > - x86: add ifunc test > > - i386 cannot mark all symbols hidden, so use fine grain > > marking in files that participate in early code before > > static pie self relocation. > > - the patch that makes all libc symbols hidden is still > > included: it is now only an optimization for non-i386 > > targets. > > > > v3: > > - refactor tunables: move internals out of dl-tunables.h > > - use generated max string length in the tunables list > > instead of magic values. > > > > v2: > > - check PI_STATIC_AND_HIDDEN for --enable-static-pie > > - change string buffer sizes in the tunables > > - fix env_alias == NULL logic in __tunables_init > > - move __ehdr_start processing after self relocation > > > > > > force pushed into nsz/bug27072 branch. > > > > Issues that are not addressed: > > - tunables try to allocate memory even with non-suid exe. > > allocation is only needed for rewriting the GLIBC_TUNABLES > > env var. (i think a case can be made that if anything there > > is TUNABLE_SECLEVEL_SXID_ERASE then this env var would be > > simply dropped, that would simplify this significantly). > > - __sbrk only needs the hidden visibility magic because of > > tunables, ideally we would not do allocations before self > > relocation. > > - tunable list data structure is not optimized for compactness. > > - all symbols are forced hidden in libc.a, but i think lib*.a > > should do the same. (other than lib*_nonshared.a) > > - i386 introduced a fair bit of complications: may be avoiding > > relative relocs is too much to ask for and relocations should > > be done in two steps after all: relative first, then irelative > > when tunable etc are set up. > > > > H.J. Lu (4): > > libmvec: Add extra-test-objs to test-extras > > elf: Avoid RELATIVE relocation for _dl_sysinfo > > Use in __libc_init_secure > > x86: Check ifunc resolver with CPU_FEATURE_USABLE [BZ #27072] > > > > Szabolcs Nagy (6): > > configure: Require PI_STATIC_AND_HIDDEN for static pie > > elf: Make the tunable struct definition internal only > > elf: Avoid RELATIVE relocs in __tunables_init > > Use hidden visibility for early static PIE code > > csu: Move static pie self relocation later [BZ #27072] > > Make libc symbols hidden in static PIE > > > > configure | 14 +++ > > configure.ac | 5 + > > csu/libc-start.c | 48 +++++--- > > elf/dl-reloc-static-pie.c | 2 + > > elf/dl-support.c | 18 ++- > > elf/dl-tunable-types.h | 42 +++++-- > > elf/dl-tunables.c | 6 +- > > elf/dl-tunables.h | 35 ++---- > > elf/enbl-secure.c | 10 +- > > include/libc-symbols.h | 9 +- > > misc/sbrk.c | 4 + > > scripts/gen-tunables.awk | 16 ++- > > sysdeps/generic/startup.h | 26 ++++ > > sysdeps/unix/sysv/linux/aarch64/libc-start.c | 5 + > > sysdeps/unix/sysv/linux/i386/startup.h | 29 ++++- > > sysdeps/x86/Makefile | 14 +++ > > sysdeps/x86/libc-start.c | 5 + > > sysdeps/x86/tst-ifunc-isa-1-static.c | 1 + > > sysdeps/x86/tst-ifunc-isa-1.c | 115 ++++++++++++++++++ > > sysdeps/x86/tst-ifunc-isa-2-static.c | 1 + > > sysdeps/x86/tst-ifunc-isa-2.c | 119 +++++++++++++++++++ > > sysdeps/x86_64/fpu/Makefile | 8 ++ > > 22 files changed, 465 insertions(+), 67 deletions(-) > > create mode 100644 sysdeps/x86/tst-ifunc-isa-1-static.c > > create mode 100644 sysdeps/x86/tst-ifunc-isa-1.c > > create mode 100644 sysdeps/x86/tst-ifunc-isa-2-static.c > > create mode 100644 sysdeps/x86/tst-ifunc-isa-2.c > >