From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail.alien8.de (mail.alien8.de [65.109.113.108]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 020F82E7179; Wed, 8 Apr 2026 09:52:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=65.109.113.108 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775641960; cv=none; b=c+TSwExl/dbxr8YE5aJkIFFPICc881E5L4sse9i8MCnB+cpCdmASMwMkE5O8Cdf+l+M3FX2bXqJMr2Iv9B2F+UwkPeD9YXrtbsNcds51gde8dgb0REhMhfYzwj2amxPDOYw8izS6/Cp1nP7QrTnj/RMoAXLz7jWBiaHwWhvVggg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775641960; c=relaxed/simple; bh=/UfVZ9CI6h5G9kHzCmaUyVm9GIRe3zvTIPUTXNkwGlE=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=M5B/jiokeTT+nX4AS6WLDkevxsJiyIxILdhTRRE66CLgQOVFGSukhq4vGXMDM5uE8aDTbNJpfJaVGnErxlbHHE3I9xET3/rI/LP/3SZ8yjAmXDhDuCSJMc29HYtAZCb1E5fkhr95zC/xR6mgVv6H6+AhmeXQh+acYsQ+u0rSpFg= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=alien8.de; spf=pass smtp.mailfrom=alien8.de; dkim=pass (4096-bit key) header.d=alien8.de header.i=@alien8.de header.b=YOHVgN/5; arc=none smtp.client-ip=65.109.113.108 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=alien8.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=alien8.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (4096-bit key) header.d=alien8.de header.i=@alien8.de header.b="YOHVgN/5" Received: from localhost (localhost.localdomain [127.0.0.1]) by mail.alien8.de (SuperMail on ZX Spectrum 128k) with ESMTP id 6731040E015B; Wed, 8 Apr 2026 09:52:20 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at mail.alien8.de Authentication-Results: mail.alien8.de (amavisd-new); dkim=pass (4096-bit key) header.d=alien8.de Received: from mail.alien8.de ([127.0.0.1]) by localhost (mail.alien8.de [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id mLg7brcnJXY1; Wed, 8 Apr 2026 09:52:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alien8.de; s=alien8; t=1775641937; bh=nBzL9ycLsYab0Tw/dX8m0CAHni1VPDojB2ooTkp3OzQ=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=YOHVgN/5ekzoNNXtrnDN6YKgCQIN5SBIL0wDUWIJ71ngjey/lbKpOmhgRh/Bwu/jN M2gvqxosPDiFviA/XZqTekzNApDbmTZxL4uAzNAiGx76fl42burFROXFLXe2UuJTtj lZ5rv6TV3n6G/gO5Cl5OmgyUHl3Crz0C/NFWW2eLE9D5RN2h8BNejx+YSeGd7YbwNv idLx8rmopa1FoeTj+v9B8pZYI2eZLMn+FCj2X7/04SVEpjKYaLDBzfT7luwoQKrlxf tmY19TlzjWnpdte89m6ryXWkv5NLvMp/x3b3S17PdMvcq3+rp+u8H7qlpH0Nj8zSNn mnPp6vP6TSorLcPbBIezN3eQZT3xzQkxlQi8HmEcDD57dRmhTXh0i9QgJ8BLDpdR1a gD1kJJoEBFHufxzYz3UUTXJHy1uPXvJdsnTAszKq3mJf/BYYFx/Wo7eBQ/4YMo0yYT kpAcWwthAZtUHDVaKw4O2zt6RSWInZiLdSacfnwBypQGeZzLLzm+nFeSJp++AoW25m 4NqhgK1WUeobUktXwYTw6nLTXcwGB4J0khPHCAT+3Eh5oURcyPdv9CWtPF6gy+55EZ 3VpDH84pP44ht7fdn5D/M7pNm1MycnzJXakAeSSYawlRht4uTJZaj/qZtVTX+Ki3/f tm2Kz16qYYSrJg3+0ptNKp90= Received: from zn.tnic (p5de8e020.dip0.t-ipconnect.de [93.232.224.32]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail.alien8.de (SuperMail on ZX Spectrum 128k) with UTF8SMTPSA id ECE7B40E0176; Wed, 8 Apr 2026 09:52:09 +0000 (UTC) Date: Wed, 8 Apr 2026 11:52:02 +0200 From: Borislav Petkov To: Nam Le Cc: Michael Matz , tglx@kernel.org, mingo@redhat.com, linux-kernel@vger.kernel.org, x86@kernel.org, linux-toolchains@vger.kernel.org Subject: Re: [PATCH] x86/boot: Discard .interp sections Message-ID: <20260408095202.GAadYlQtQvNJ5WXFDn@fat_crate.local> References: <20260407233957.2263551-1-lehoangnamtep@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20260407233957.2263551-1-lehoangnamtep@gmail.com> On Wed, Apr 08, 2026 at 12:39:57AM +0100, Nam Le wrote: > With the --dynamic-linker flag added, either manually or via a > toolchain wrapper, the ld.lld linker generates a .interp section at > address 0x1f1 which is normally reserved for the hdr, causing an > assertion error to occur: > > . = ASSERT(hdr == 0x1f1, "The setup header has the wrong offset!"); > > This does not happen with other linkers like ld.bfd. > > We can see the difference by inspecting the generated .elf file: > > ld.lld: > Section Headers: > [Nr] Name Type Addr Off Size > [ 1] .bstext PROGBITS 00000000 001000 0001ef > [ 2] .interp PROGBITS 000001ef 0011ef 000053 > [ 3] .header PROGBITS 00000242 001242 00007d > > ld.bfd: > Section Headers: > [Nr] Name Type Addr Off Size > [ 1] .bstext PROGBITS 00000000 001000 0001ef > [ 2] .header PROGBITS 000001ef 0011ef 00007d > [ 3] .entrytext PROGBITS 0000026c 00126c 000069 > > Adding .interp to the DISCARD section ensures it's not included in > the final .elf file. > > Signed-off-by: Nam Le > --- > arch/x86/boot/setup.ld | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/x86/boot/setup.ld b/arch/x86/boot/setup.ld > index e1d594a60204..daffd876e94d 100644 > --- a/arch/x86/boot/setup.ld > +++ b/arch/x86/boot/setup.ld > @@ -61,6 +61,7 @@ SECTIONS > > /DISCARD/ : { > *(.note*) > + *(.interp) > } > > /* Sounds to me like you're shooting yourself in the foot on purpose: --dynamic-linker=value Specify the dynamic linker to be used for a dynamically linked executable. This is recorded in an ELF segment of type PT_INTERP. So don't do that then. :-) -- Regards/Gruss, Boris. https://people.kernel.org/tglx/notes-about-netiquette