linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] powerpc: fix dedotify for binutils >= 2.26
@ 2016-02-05 18:50 Andreas Schwab
  2016-02-06 23:45 ` Anton Blanchard
  2016-02-09 12:16 ` Michael Ellerman
  0 siblings, 2 replies; 3+ messages in thread
From: Andreas Schwab @ 2016-02-05 18:50 UTC (permalink / raw)
  To: linuxppc-dev; +Cc: linux-kernel

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.

Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>
---
 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++;
 			}
 		}
 	}
-- 
2.7.0


-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] powerpc: fix dedotify for binutils >= 2.26
  2016-02-05 18:50 [PATCH] powerpc: fix dedotify for binutils >= 2.26 Andreas Schwab
@ 2016-02-06 23:45 ` Anton Blanchard
  2016-02-09 12:16 ` Michael Ellerman
  1 sibling, 0 replies; 3+ messages in thread
From: Anton Blanchard @ 2016-02-06 23:45 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: linuxppc-dev, linux-kernel, Alan Modra


> 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 <schwab@linux-m68k.org>

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++;
>  			}
>  		}
>  	}

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: powerpc: fix dedotify for binutils >= 2.26
  2016-02-05 18:50 [PATCH] powerpc: fix dedotify for binutils >= 2.26 Andreas Schwab
  2016-02-06 23:45 ` Anton Blanchard
@ 2016-02-09 12:16 ` Michael Ellerman
  1 sibling, 0 replies; 3+ messages in thread
From: Michael Ellerman @ 2016-02-09 12:16 UTC (permalink / raw)
  To: Andreas Schwab, linuxppc-dev; +Cc: linux-kernel

On Fri, 2016-05-02 at 18:50:03 UTC, Andreas Schwab wrote:
> 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.
> 
> Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>

Applied to powerpc fixes, thanks.

https://git.kernel.org/powerpc/c/f15838e9cac8f78f0cc506529b

cheers

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-02-09 12:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-05 18:50 [PATCH] powerpc: fix dedotify for binutils >= 2.26 Andreas Schwab
2016-02-06 23:45 ` Anton Blanchard
2016-02-09 12:16 ` Michael Ellerman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).