diff mbox

x86, vdso: Fix vdso-layout linker script

Message ID 20140403174339.GA284@x4 (mailing list archive)
State New, archived
Headers show

Commit Message

Markus Trippelsdorf April 3, 2014, 5:43 p.m. UTC
Commit 26f5ef2e3c3 added a /DISCARD/ section to the vdso-layout.lds.S
linker script. This broke the build when using the gold linker:

 ld: error: arch/x86/vdso/vdso.lds:79:12: syntax error, unexpected ':'
 ld: fatal error: unable to parse script file arch/x86/vdso/vdso.lds

As Cary Coutant pointed out on the sourceware bugzilla: 
https://sourceware.org/bugzilla/show_bug.cgi?id=16804  
the problem is that the .text section directly above the /DISCARD/
section should be terminated with an comma.

Signed-off-by: Markus Trippelsdorf <markus@trippelsdorf.de>

Comments

Andy Lutomirski April 3, 2014, 5:47 p.m. UTC | #1
On Thu, Apr 3, 2014 at 10:43 AM, Markus Trippelsdorf
<markus@trippelsdorf.de> wrote:
> Commit 26f5ef2e3c3 added a /DISCARD/ section to the vdso-layout.lds.S
> linker script. This broke the build when using the gold linker:
>
>  ld: error: arch/x86/vdso/vdso.lds:79:12: syntax error, unexpected ':'
>  ld: fatal error: unable to parse script file arch/x86/vdso/vdso.lds
>
> As Cary Coutant pointed out on the sourceware bugzilla:
> https://sourceware.org/bugzilla/show_bug.cgi?id=16804
> the problem is that the .text section directly above the /DISCARD/
> section should be terminated with an comma.
>
> Signed-off-by: Markus Trippelsdorf <markus@trippelsdorf.de>

This patch triggers an internal error in whatever version of gold I'm
using.  I'll send a variant of the patch when I finish testing it.

>
> diff --git a/arch/x86/vdso/vdso-layout.lds.S b/arch/x86/vdso/vdso-layout.lds.S
> index 2e263f367b13..313bca59ddea 100644
> --- a/arch/x86/vdso/vdso-layout.lds.S
> +++ b/arch/x86/vdso/vdso-layout.lds.S
> @@ -61,7 +61,7 @@ SECTIONS
>          */
>         . = ALIGN(0x100);
>
> -       .text           : { *(.text*) }                 :text   =0x90909090
> +       .text           : { *(.text*) }                 :text   =0x90909090,
>
>         /DISCARD/ : {
>                 *(.discard)
> --
> Markus
diff mbox

Patch

diff --git a/arch/x86/vdso/vdso-layout.lds.S b/arch/x86/vdso/vdso-layout.lds.S
index 2e263f367b13..313bca59ddea 100644
--- a/arch/x86/vdso/vdso-layout.lds.S
+++ b/arch/x86/vdso/vdso-layout.lds.S
@@ -61,7 +61,7 @@  SECTIONS
 	 */
 	. = ALIGN(0x100);
 
-	.text		: { *(.text*) }			:text	=0x90909090
+	.text		: { *(.text*) }			:text	=0x90909090,
 
 	/DISCARD/ : {
 		*(.discard)