Subject: Re: [PATCH] powerpc: fix dedotify for binutils >= 2.26

From: Anton Blanchard <[email-masked]>
Date: Sun, 7 Feb 2016 10:45:32 +1100

> Since binutils 2.26 BFD is doing suffix merging on STRTAB sections.
> But dedotify modifies the symbol names in place, which can also modify
> unrelated symbols with a name that matches a suffix of a dotted
> name.  To remove the leading dot of a symbol name we can just
> increment the pointer into the STRTAB section instead.

Thanks Andreas.

> Signed-off-by: Andreas Schwab <[email-masked]>

I think we should get it into stable too.

Anton

> ---
>  arch/powerpc/kernel/module_64.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/powerpc/kernel/module_64.c
> b/arch/powerpc/kernel/module_64.c index ac64ffd..08b7a40 100644
> --- a/arch/powerpc/kernel/module_64.c
> +++ b/arch/powerpc/kernel/module_64.c
> @@ -340,7 +340,7 @@ static void dedotify(Elf64_Sym *syms, unsigned
> int numsyms, char *strtab) if (name[0] == '.') {
>  				if (strcmp(name+1, "TOC.") == 0)
>  					syms[i].st_shndx = SHN_ABS;
> -				memmove(name, name+1, strlen(name));
> +				syms[i].st_name++;
>  			}
>  		}
>  	}