[PATCH 4/5] powerpc: Support feature fixups in modules

Olof Johansson olof at lixom.net
Fri Oct 20 16:01:47 EST 2006


On Fri, 20 Oct 2006 11:47:19 +1000 Benjamin Herrenschmidt <benh at kernel.crashing.org> wrote:

> This patch adds support for feature fixups in modules. This involves
> adding support for R_PPC64_REL64 relocs to the 64 bits module loader.
> It also modifies modpost.c to ignore the powerpc fixup sections (or it
> would warn when used in .init.text).
> 
> Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

Acked-by: Olof Johansson <olof at lixom.net>

> Index: linux-cell/arch/powerpc/kernel/module_32.c
> ===================================================================
> --- linux-cell.orig/arch/powerpc/kernel/module_32.c	2006-10-13 16:00:26.000000000 +1000
> +++ linux-cell/arch/powerpc/kernel/module_32.c	2006-10-13 16:59:36.000000000 +1000
[...]
> +static const Elf_Shdr *find_section(const Elf_Ehdr *hdr,
> +				    const Elf_Shdr *sechdrs,
> +				    const char *name)
> +{
> +	char *secstrings;
> +	unsigned int i;
> +
> +	secstrings = (char *)hdr + sechdrs[hdr->e_shstrndx].sh_offset;
> +	for (i = 1; i < hdr->e_shnum; i++)
> +		if (strcmp(secstrings+sechdrs[i].sh_name, name) == 0)
> +			return &sechdrs[i];
> +	return NULL;
> +}
> +

It would be nice if this could be put in some common location instead
of duplicated between the two files. It builds differently on 32 and 64
bits due to the type defines, but both will never be used in the same
kernel.


-Olof



More information about the Linuxppc-dev mailing list