Bug#628685: ld segfaults when building udev on mips/mipsel

2011-06-09 Thread Aurelien Jarno
tag 628685 + patch
thanks

On Sun, Jun 05, 2011 at 05:40:15PM +0200, Aurelien Jarno wrote:
 On Tue, May 31, 2011 at 12:13:45PM +0200, Marco d'Itri wrote:
  Package: binutils
  Version: 2.21.51.20110421-3
  Severity: critical
  
  ld reliably segfaults when building udev on mips/mipsel:
  
  https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipsver=170-1stamp=1306799134
  https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipselver=170-1stamp=1306799800
  
  Reverting this commit fixes it:
  
  http://git.kernel.org/?p=linux/hotplug/udev.git;a=commitdiff;h=f0ed90b7678045759ffa2a44d2b4cac96968b077
  
 
 A smaller workaround is to remove the -Wl,--gc-sections
 

This is the patch proposed by upstream, but it is not yet committed. It
looks reasonable, and I confirm it fixes the issue.


Index: ld/emultempl/mipself.em
===
RCS file: /cvs/src/src/ld/emultempl/mipself.em,v
retrieving revision 1.12
diff -u -3 -p -r1.12 mipself.em
--- ld/emultempl/mipself.em 4 Feb 2010 09:16:43 -   1.12
+++ ld/emultempl/mipself.em 8 Jun 2011 16:51:16 -
@@ -138,6 +138,11 @@ mips_add_stub_section (const char *stub_
   lang_output_section_statement_type *os;
   struct hook_stub_info info;
 
+  /* PR 12845: If the input section has been garbage collected it will
+ not have its output section set to *ABS*.  */
+  if (bfd_is_abs_section (output_section))
+return NULL;
+
   /* Create the stub file, if we haven't already.  */
   if (stub_file == NULL)
 {
Index: bfd/elf.c
===
RCS file: /cvs/src/src/bfd/elf.c,v
retrieving revision 1.538
diff -u -3 -p -r1.538 elf.c
--- bfd/elf.c   23 May 2011 05:41:00 -  1.538
+++ bfd/elf.c   8 Jun 2011 16:51:17 -
@@ -6272,6 +6272,8 @@ _bfd_elf_init_private_section_data (bfd 
   || obfd-xvec-flavour != bfd_target_elf_flavour)
 return TRUE;
 
+  BFD_ASSERT (elf_section_data (osec) != NULL);
+
   /* For objcopy and relocatable link, don't copy the output ELF
  section type from input if the output BFD section flags have been
  set to something different.  For a final link allow some flags
Index: bfd/elfxx-mips.c
===
RCS file: /cvs/src/src/bfd/elfxx-mips.c,v
retrieving revision 1.285
diff -u -3 -p -r1.285 elfxx-mips.c
--- bfd/elfxx-mips.c3 Jun 2011 10:11:06 -   1.285
+++ bfd/elfxx-mips.c8 Jun 2011 16:51:18 -
@@ -1727,6 +1727,11 @@ mips_elf_check_symbols (struct mips_elf_
 
   if (mips_elf_local_pic_function_p (h))
 {
+  /* PR 12845: If H is in a section that has been garbage
+collected it will have its output section set to *ABS*.  */
+  if (bfd_is_abs_section (h-root.root.u.def.section-output_section))
+   return TRUE;
+
   /* H is a function that might need $25 to be valid on entry.
 If we're creating a non-PIC relocatable object, mark H as
 being PIC.  If we're creating a non-relocatable object with

-- 
Aurelien Jarno  GPG: 1024D/F1BCDB73
aurel...@aurel32.net http://www.aurel32.net



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#628685: ld segfaults when building udev on mips/mipsel

2011-06-09 Thread Aurelien Jarno
Le 09/06/2011 08:34, Aurelien Jarno a écrit :
 tag 628685 + patch
 thanks
 
 On Sun, Jun 05, 2011 at 05:40:15PM +0200, Aurelien Jarno wrote:
 On Tue, May 31, 2011 at 12:13:45PM +0200, Marco d'Itri wrote:
 Package: binutils
 Version: 2.21.51.20110421-3
 Severity: critical

 ld reliably segfaults when building udev on mips/mipsel:

 https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipsver=170-1stamp=1306799134
 https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipselver=170-1stamp=1306799800

 Reverting this commit fixes it:

 http://git.kernel.org/?p=linux/hotplug/udev.git;a=commitdiff;h=f0ed90b7678045759ffa2a44d2b4cac96968b077


 A smaller workaround is to remove the -Wl,--gc-sections

 
 This is the patch proposed by upstream, but it is not yet committed. It
 looks reasonable, and I confirm it fixes the issue.
 

Please note that the patch has been committed upstream.


-- 
Aurelien Jarno  GPG: 1024D/F1BCDB73
aurel...@aurel32.net http://www.aurel32.net



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#628685: ld segfaults when building udev on mips/mipsel

2011-06-05 Thread Aurelien Jarno
On Tue, May 31, 2011 at 12:13:45PM +0200, Marco d'Itri wrote:
 Package: binutils
 Version: 2.21.51.20110421-3
 Severity: critical
 
 ld reliably segfaults when building udev on mips/mipsel:
 
 https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipsver=170-1stamp=1306799134
 https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipselver=170-1stamp=1306799800
 
 Reverting this commit fixes it:
 
 http://git.kernel.org/?p=linux/hotplug/udev.git;a=commitdiff;h=f0ed90b7678045759ffa2a44d2b4cac96968b077
 

A smaller workaround is to remove the -Wl,--gc-sections

-- 
Aurelien Jarno  GPG: 1024D/F1BCDB73
aurel...@aurel32.net http://www.aurel32.net



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#628685: ld segfaults when building udev on mips/mipsel

2011-05-31 Thread Marco d'Itri
Package: binutils
Version: 2.21.51.20110421-3
Severity: critical

ld reliably segfaults when building udev on mips/mipsel:

https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipsver=170-1stamp=1306799134
https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipselver=170-1stamp=1306799800

Reverting this commit fixes it:

http://git.kernel.org/?p=linux/hotplug/udev.git;a=commitdiff;h=f0ed90b7678045759ffa2a44d2b4cac96968b077

-- 
ciao,
Marco


signature.asc
Description: Digital signature


Bug#628685: ld segfaults when building udev on mips/mipsel

2011-05-31 Thread Matthias Klose

severity 628685 important
tag 628685 help
thanks

On 05/31/2011 12:13 PM, Marco d'Itri wrote:

Package: binutils
Version: 2.21.51.20110421-3
Severity: critical

ld reliably segfaults when building udev on mips/mipsel:

https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipsver=170-1stamp=1306799134
https://buildd.debian.org/status/fetch.php?pkg=udevarch=mipselver=170-1stamp=1306799800

Reverting this commit fixes it:

http://git.kernel.org/?p=linux/hotplug/udev.git;a=commitdiff;h=f0ed90b7678045759ffa2a44d2b4cac96968b077


looks like you have a work-around for now. lowering the severity.



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org