From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pg1-x531.google.com (mail-pg1-x531.google.com [IPv6:2607:f8b0:4864:20::531]) by sourceware.org (Postfix) with ESMTPS id CEFF33858C56 for ; Mon, 11 Apr 2022 01:38:49 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org CEFF33858C56 Received: by mail-pg1-x531.google.com with SMTP id 125so12845338pgc.11 for ; Sun, 10 Apr 2022 18:38:49 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=85BhwKvGsOw6U9DBdAHhUu6a9uo7ugzEmYE7pAzFHTQ=; b=KuZCs1MG4AnzHG8/bGhAuMgSemlFVpJh4tUpNDugASqbwcoC+U5I7FIX/zS5FeDuKz UzDC+kNhf0DymhsgbUmdWiaiNdWbvushukS0m0zt8D/W42MUJcMGCUFY/8Ua8iKfvtQi uk2YkpD8B5tg6qux37Fos2zXbO9e4SHCZ8Hcuol6rVut3Cia32GSFpZQQDKYz6plAV50 fqZo/5Ex2/3AIJ6pHPJ/7c/jYzVNb0WfqqhmLdHlyVW2RXvfT+64A4h7oGZwKJrbQ/me C3lPQoP7KClZumkCTE1b+Df3yWsUMKP+4Dg9KLfytc7kKVGR250WIs/v7nx1TM9HNUGa vDQA== X-Gm-Message-State: AOAM530/DJTEgjrp6YxWbm+t4oXvyBeav1inaL+sUf5cm0XnQNGNXclf A44JvwojpUlLlz5vE3SXyDVDPVxdr/4= X-Google-Smtp-Source: ABdhPJx7Vr7LEprwYJZ9AnL+qyj4FsogZZQHvLoT9FMZTZx7T2MyYh1Yn2GEOCbUKe/0kcWywX3sDw== X-Received: by 2002:a65:5245:0:b0:39c:ce49:e97d with SMTP id q5-20020a655245000000b0039cce49e97dmr15141626pgp.301.1649641128481; Sun, 10 Apr 2022 18:38:48 -0700 (PDT) Received: from squeak.grove.modra.org ([2406:3400:51d:8cc0:d721:7866:2898:d415]) by smtp.gmail.com with ESMTPSA id j18-20020a633c12000000b0038204629cc9sm27311084pga.10.2022.04.10.18.38.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 10 Apr 2022 18:38:47 -0700 (PDT) Received: by squeak.grove.modra.org (Postfix, from userid 1000) id C0C0A1140F2B; Mon, 11 Apr 2022 11:08:44 +0930 (ACST) Date: Mon, 11 Apr 2022 11:08:44 +0930 From: Alan Modra To: Tulio Magno Quites Machado Filho Cc: libc-alpha@sourceware.org Subject: Re: [PATCH v2 0/4] PowerPC64 static-pie Message-ID: References: <20220228064052.3413334-1-amodra@gmail.com> <878rsf2otn.fsf@linux.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <878rsf2otn.fsf@linux.ibm.com> X-Spam-Status: No, score=-3029.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) 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: Mon, 11 Apr 2022 01:38:52 -0000 On Fri, Apr 08, 2022 at 07:27:32PM -0300, Tulio Magno Quites Machado Filho wrote: > Alan Modra via Libc-alpha writes: > > > This is a repost of the series at > > https://sourceware.org/pipermail/libc-alpha/2022-January/135598.html > > incorporating review comments. > > > > Changes are: > > - subject lines changed to comply with glibc commit log standards > > - patch 1/4 log now mentions making a couple of symbols hidden > > - patch 2/4 makes at_platform available to early ifunc resolvers > > as well as hwcap. > > - patch 3/4 log mentions stinfo->init and stinfo->fini being unused > > - patch 4/4 PI_STATIC_AND_HIDDEN comment explains what is going on > > > > patch 2/4 is the only code change from the previous series. Testsuite > > results now show no regressions on powerpc64le-linux. > > I'm still seeing the following failures on powerpc64le-linux: > > FAIL: elf/tst-tls1-static-non-pie > FAIL: gmon/tst-gmon-static > FAIL: gmon/tst-gmon-static-gprof > > Am I missing anything? > > I used different GCC and Binutils versions ranging between: > - GCC v8 and v11 > - Binutils 2.30 and 2.38 (2020-03-04) I was testing with mainline binutils and gcc (gcc-12 20220122). It is quite likeley that bleeding edge tools are required for static-pie on ppc64le. I'll see if I can recreate some of your results, in particular with 2.38 binutils. Mainline ppc64 binutils has a patch that changes linker behaviour for absolute symbols. I haven't backported that patch, or the DT_RELR support, to the 2.38 branch because those changes might result in breakage. I'd rather let them mature a while on mainline. Here are the results I was seeing with both static-pie and relr support enabled for ppc64 vs. basline glibc. Same toolchain for both glibc builds. --- base_results 2022-03-04 04:36:09.71152949 -0600 +++ staticpierelr_results 2022-03-04 04:36:17.263676034 -0600 @@ -24,7 +24,7 @@ UNSUPPORTED: time/tst-settimeofday Summary of test results: 3 FAIL - 4798 PASS + 4802 PASS 19 UNSUPPORTED 16 XFAIL 2 XPASS The three fails common to both test runs were FAIL: math/test-ibm128-llround FAIL: math/test-ibm128-y1 FAIL: nptl/tst-pthread-gdb-attach-static The extra PASSes are new DT_RELR tests I think. > Anyway, this is a summary of what I think about these patches: > > - Patch 1: Looks good to me. > - Patch 2: Looks good to me. > - Patch 3: Looks good to me after a minor change. > - Patch 4: Hopefully I'm just missing a detail. Otherwise, I believe we should > delay it until the previous issues are fixed. Thanks, I'm happy to leave out patch 4 for the time being, and perhaps change it so that --enable-static-pie on the configure line is needed for ppc64. First three pushed along with the dl_vdso_vsym tweak, but I did see this weird warning, whatever that means.. alan@squeak:~/src/glibc-current$ git push origin 1a85970f41ea1e5abe6da2298a5e8fedcea26b70:master Enumerating objects: 62, done. Counting objects: 100% (62/62), done. Delta compression using up to 32 threads Compressing objects: 100% (37/37), done. Writing objects: 100% (39/39), 6.06 KiB | 6.06 MiB/s, done. Total 39 (delta 33), reused 0 (delta 0), pack-reused 0 remote: Traceback (most recent call last): remote: File "/usr/local/bin/irkerhook.py", line 545, in remote: ship(extractor, commit, not notify) remote: File "/usr/local/bin/irkerhook.py", line 467, in ship remote: privmsg = unicode(metadata) remote: File "/usr/local/bin/irkerhook.py", line 99, in __unicode__ remote: if e.code == 401: remote: AttributeError: 'URLError' object has no attribute 'code' remote: *** !!! WARNING: /git/glibc.git/hooks-bin/post-receive returned code: 1. To ssh://sourceware.org/git/glibc.git c0efbf8920..1a85970f41 1a85970f41ea1e5abe6da2298a5e8fedcea26b70 -> master -- Alan Modra Australia Development Lab, IBM