From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id 99D583858D1E for ; Thu, 27 Jan 2022 05:00:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 99D583858D1E Received: from mail-qv1-f72.google.com (mail-qv1-f72.google.com [209.85.219.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-636-CGpBRMRaNW-pDFFIXhYGqA-1; Thu, 27 Jan 2022 00:00:01 -0500 X-MC-Unique: CGpBRMRaNW-pDFFIXhYGqA-1 Received: by mail-qv1-f72.google.com with SMTP id hu4-20020a056214234400b0041ad4e40960so2070068qvb.13 for ; Wed, 26 Jan 2022 21:00:01 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:organization:in-reply-to :content-transfer-encoding; bh=rtN+p/gmfV8veWYLXrVpzRxGILQYxOtuUxOytPNSJoE=; b=WT8W2aFMwJax0fx3/UZRAPseHeBi1mKdBGLyDlSFvQSXZuu7kVEuGY7PjG5XyQSMCP fS/OzaovnhXBkNxcMzH0gTIynkoyk6fm5NJPdbcD5xRrlyDPoW4dnF9WY7Ts+nL+U8ek d5oCS2hK3rKVwE24Hv56A9NxUDam+NXseMtG9mFJ5FXHe/iUVY/KmdVC0cZ7lRNVih35 gwCPClu2n5kdXf4g4oibrpVuaVEiPaps6M2OpeR8EKmgoiyiQZYMdrzA8aKYrzP9JYqC CflB73BG/30rg7fJcxUNvZokR2vvrgp+es/UOubKMk2rd61vvkwXlzO22nQ4nvehIEye hK7w== X-Gm-Message-State: AOAM5331AbWteFLAl6UNdrCyZFu7+kFbDRt7PXowSAH+awobQNii8hEx lOg2FkCGdReXPQXTCoSJymWHogB/X6/x/+MC8X28ecKQFKrUAYpa9nMZY7npDnfd1LYMTEnPBMf wBHhZVrtYfHIM6kmAjwjj X-Received: by 2002:ac8:7c4c:: with SMTP id o12mr1441465qtv.475.1643259600493; Wed, 26 Jan 2022 21:00:00 -0800 (PST) X-Google-Smtp-Source: ABdhPJxHQWjcAfAxa7U5NF0XjDE2KtbSLnS/aGPT15SBtHTE50N5sLnk9ACRBmCccIOmXaQb72e6hg== X-Received: by 2002:ac8:7c4c:: with SMTP id o12mr1441464qtv.475.1643259600293; Wed, 26 Jan 2022 21:00:00 -0800 (PST) Received: from [192.168.0.241] (135-23-175-80.cpe.pppoe.ca. [135.23.175.80]) by smtp.gmail.com with ESMTPSA id n14sm910228qkp.89.2022.01.26.20.59.59 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 26 Jan 2022 20:59:59 -0800 (PST) Message-ID: <6756d321-a537-48f1-931c-c68a12dd2309@redhat.com> Date: Wed, 26 Jan 2022 23:59:58 -0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.4.0 Subject: Re: [PATCH 0/3] Remove prelink support To: Adhemerval Zanella , libc-alpha@sourceware.org Cc: Richard Purdie References: <20220121172951.285848-1-adhemerval.zanella@linaro.org> From: Carlos O'Donell Organization: Red Hat In-Reply-To: <20220121172951.285848-1-adhemerval.zanella@linaro.org> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-6.1 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, NICE_REPLY_A, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP 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: Thu, 27 Jan 2022 05:00:09 -0000 On 1/21/22 12:29, Adhemerval Zanella via Libc-alpha wrote: > As discussed recently on maillist [1], prelink is deprecated in > practice: This goes in the right direction. I think we should review this for glibc 2.36. Leaving glibc 2.35 as the last release with prelink support. I've reviewed your NEWS entry for the removal note. > * There is no active development neither maintainace. > * It misses supports for some architectures, even for architecture > wildly deployed such as aarch64 [2]. > * It does not work with recent security hardening such as PIE. > * Nor it will work on future ABI additions such as DT_RELR. > * Even when PIE is not enabled its coverity if flacky, with some > binaries showing corrupted state [3]. > * Recent glibc changes to support different tools (such as lld) > showed inherent issue with current prelink support. > > The first patch removes both prelink support by the loader and the > LD_TRACE_PRELINKING. > > The remove of mtrace TRACE_PRELINKING usage is on its own patch > because it changes LD_TRACE_LOADED_OBJECTS semantic to support > dumping the executable loading address and fixes mtrace for non > PIE similar to BZ#22716. > > Finally the third part removed LD_USE_LOAD_BIAS, which is used > solely for try support prelink with PIE. > > [1] https://sourceware.org/pipermail/libc-alpha/2022-January/135520.html > [2] https://sourceware.org/pipermail/libc-alpha/2022-January/135522.html > [3] https://embed.endfa.net/yocto-cross-prelink-1/ > > Adhemerval Zanella (3): > elf: Remove prelink support > malloc: Remove LD_TRACE_PRELINKING usage from mtrace > elf: Remove LD_USE_LOAD_BIAS > > NEWS | 6 + > elf/Makefile | 16 -- > elf/dl-conflict.c | 77 ------- > elf/dl-deps.c | 66 ------ > elf/dl-error-skeleton.c | 4 +- > elf/dl-load.c | 3 +- > elf/dl-lookup.c | 161 -------------- > elf/dl-main.h | 3 + > elf/dl-map-segments.h | 3 +- > elf/dl-support.c | 1 - > elf/do-rel.h | 3 - > elf/rtld.c | 283 ++++++------------------- > elf/tst-prelink-cmp.c | 49 ----- > elf/tst-prelink.c | 29 --- > malloc/mtrace.pl | 55 ++--- > sysdeps/alpha/dl-machine.h | 15 -- > sysdeps/arm/dl-machine.h | 4 - > sysdeps/generic/ldsodefs.h | 16 -- > sysdeps/generic/unsecvars.h | 1 - > sysdeps/i386/dl-machine.h | 16 +- > sysdeps/or1k/dl-machine.h | 4 - > sysdeps/powerpc/powerpc32/dl-machine.h | 31 +-- > sysdeps/powerpc/powerpc64/dl-machine.h | 37 ---- > sysdeps/s390/s390-32/dl-machine.h | 22 +- > sysdeps/s390/s390-64/dl-machine.h | 22 +- > sysdeps/sh/dl-machine.h | 2 +- > sysdeps/sparc/sparc32/dl-machine.h | 52 +---- > sysdeps/sparc/sparc64/dl-machine.h | 72 +------ > sysdeps/x86_64/dl-machine.h | 48 ++--- > 29 files changed, 167 insertions(+), 934 deletions(-) > delete mode 100644 elf/dl-conflict.c > delete mode 100644 elf/tst-prelink-cmp.c > delete mode 100644 elf/tst-prelink.c > -- Cheers, Carlos.