[PATCH] arch/powerpc: Remove .interp section in vmlinux
Segher Boessenkool
segher at kernel.crashing.org
Tue Jul 1 23:32:57 AEST 2025
Hi!
On Tue, Jul 01, 2025 at 12:49:29PM +0200, Christophe Leroy wrote:
> When building with CONFIG_RELOCATABLE, there is a .interp section
> which contains the name of the expected ELF interpreter:
>
> Contents of section .interp:
> c0000000021c1bac 2f757372 2f6c6962 2f6c642e 736f2e31 /usr/lib/ld.so.1
> c0000000021c1bbc 00 .
>
> That information is useless and even likely wrong. Remove it.
s/ likely//
You cannot run the kernel as some dynamic object (under control of some
interpreter that will load DSOs for you), hehe.
The various bfd/elf*.c (in binutils/ld) have code like
if (htab->elf.dynamic_sections_created)
{
/* Set the contents of the .interp section to the interpreter. */
if (bfd_link_executable (info) && !info->nointerp)
{
s = bfd_get_linker_section (dynobj, ".interp");
if (s == NULL)
abort ();
s->size = sizeof ELF_DYNAMIC_INTERPRETER;
s->contents = (unsigned char *) ELF_DYNAMIC_INTERPRETER;
}
}
(yes there are about a hundred copies of this code, that could be
improved :-) )
whenever producing dynamic objects, so this code just sets that text and
that's all, no side effect to be worried of.
Acked-by: Segher Boessenkool <segher at kernel.crashing.org>
(Maybe this could or should be in generic code though, not architecture
code?)
Segher
More information about the Linuxppc-dev
mailing list