From patchwork Mon Mar 17 23:01:35 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Roland McGrath X-Patchwork-Id: 132 X-Patchwork-Delegate: carlos@redhat.com Return-Path: X-Original-To: siddhesh@wilcox.dreamhost.com Delivered-To: siddhesh@wilcox.dreamhost.com Received: from homiemail-mx23.g.dreamhost.com (caibbdcaabja.dreamhost.com [208.113.200.190]) by wilcox.dreamhost.com (Postfix) with ESMTP id AD1B836008A for ; Mon, 17 Mar 2014 16:01:40 -0700 (PDT) Received: by homiemail-mx23.g.dreamhost.com (Postfix, from userid 14307373) id 62AFC61C1E563; Mon, 17 Mar 2014 16:01:40 -0700 (PDT) X-Original-To: glibc@patchwork.siddhesh.in Delivered-To: x14307373@homiemail-mx23.g.dreamhost.com Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by homiemail-mx23.g.dreamhost.com (Postfix) with ESMTPS id 44ECE61C1E512 for ; Mon, 17 Mar 2014 16:01:40 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:mime-version:content-type :content-transfer-encoding:from:to:cc:subject:in-reply-to :references:message-id:date; q=dns; s=default; b=Ku4qT/0f3VDZBZz DitsPSeJ8JgqgeQrnSIEeVVNgCRhm7U/5uLOxIXnU+yewQ2l4vKi7RH7KuJKlUT4 +xVfvdw8LlBKHhnLUHmFEnIzfCUTv151cFvWZ5RxJh/GrRK6+eMvjJuXel7VhCeW QC2EJzeuUjlBjstn8a5dZIhBmbgg= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:mime-version:content-type :content-transfer-encoding:from:to:cc:subject:in-reply-to :references:message-id:date; s=default; bh=jpFjAjuyw+TnvELLyQDlf NY+gi0=; b=IFbsG8J8WMMIu5dyPlIRl/8Es6i5r0n4AiDRlGepuPoc33Bdk24Mv YO8zlZCT2zf551uE2xifMB+98CywOLyil6cRpbPgZCu6SPNdTeyJUIvKSQGON8PW 1j2XhD7GWvKJSd8TfHHqs2SQ17qI//BFBnG7jlrkeqL1wPDz7XTUy4= Received: (qmail 2490 invoked by alias); 17 Mar 2014 23:01:38 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 2480 invoked by uid 89); 17 Mar 2014 23:01:38 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.3 required=5.0 tests=AWL, BAYES_00 autolearn=ham version=3.3.2 X-HELO: topped-with-meat.com MIME-Version: 1.0 From: Roland McGrath To: "Carlos O'Donell" Cc: Siddhesh Poyarekar , "GNU C. Library" Subject: Re: [PATCH roland/ehdr_start] Use __ehdr_start, when available, for rtld to get its own headers. In-Reply-To: Carlos O'Donell's message of Monday, 17 March 2014 18:29:30 -0400 <5327774A.3000609@redhat.com> References: <20140311222933.CC24274474@topped-with-meat.com> <20140317200749.A65E874461@topped-with-meat.com> <5327774A.3000609@redhat.com> Message-Id: <20140317230135.5323474466@topped-with-meat.com> Date: Mon, 17 Mar 2014 16:01:35 -0700 (PDT) X-CMAE-Score: 0 X-CMAE-Analysis: v=2.1 cv=Rt9WckWK c=1 sm=1 tr=0 a=WkljmVdYkabdwxfqvArNOQ==:117 a=14OXPxybAAAA:8 a=nywFZqV50nIA:10 a=Z6MIti7PxpgA:10 a=kj9zAlcOel0A:10 a=hOe2yjtxAAAA:8 a=oVj2Kl0lVrUEnQxHdCsA:9 a=Jpt4ZUz70obXnJbV:21 a=CxOAH7LJq2r1vkOw:21 a=CjuIK1q_8ugA:10 X-DH-Original-To: glibc@patchwork.siddhesh.in > I see this on f19 build systems. I'm not testing random distro-hacked tools nor any specific binutils versions not from sourceware release branches. I tested binutils-2_24-branch and it was fine. I tested binutils-2_23-branch and it shows the problem you see. It's good that I was especially looking for this particular failure, because someone broke the tree so that 'make check-abi' claims it succeeded after there were some failures. (I've just posted about that, and I really really hope those responsible fix their blunder before I look at libc again tomorrow.) > --- ../sysdeps/unix/sysv/linux/x86_64/64/nptl/ld.abilist 2014-03-14 13:44:46.788247781 -0400 > +++ /home/carlos/build/glibc-wundef/elf/ld.symlist 2014-03-17 01:17:11.841818363 -0400 > @@ -0,0 +1,2 @@ > +Base > +__ehdr_start Base g ? D .hash 0000000000000000 > > ... > Symbol table '.dynsym' contains 29 entries: > Num: Value Size Type Bind Vis Ndx Name > 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND > 1: 0000000000000ab0 0 SECTION LOCAL DEFAULT 10 > 2: 0000000000000000 0 NOTYPE GLOBAL HIDDEN 1 __ehdr_start It's a binutils bug that it appears there, but it is actually harmless. (Any STV_HIDDEN symbol appearing in .dynsym is useless but harmless.) We could try to make the configure check for __ehdr_start support reject binutils versions that have this bug. But that would be to check for something that is not really directly material to what the check is really for. Alternatively, we could make abilist.awk ignore hidden symbols. A change for that is on roland/abilist-hidden and below, but I don't have time to test it today. If it works and you like it, just merge the branch. Thanks, Roland 2014-03-17 Roland McGrath * scripts/abilist.awk: Ignore symbols marked with .hidden. --- a/scripts/abilist.awk +++ b/scripts/abilist.awk @@ -48,6 +48,10 @@ $2 == "g" || $2 == "w" && (NF == 7 || NF == 8) { symbol = $NF; gsub(/[()]/, "", version); + # binutils versions up through at least 2.23 have some bugs that + # caused STV_HIDDEN symbols to appear in .dynsym, though that is useless. + if (NF > 7 && $7 == ".hidden") next; + if (version == "GLIBC_PRIVATE") next; desc = "";