[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores
From: |
george dot tovrea at baesystems dot com |
Subject: |
[Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores |
Date: |
15 Sep 2009 15:32:58 -0000 |
------- Additional Comments From george dot tovrea at baesystems dot com
2009-09-15 15:32 -------
Subject: RE: GNU ld (GNU Binutils) 2.20.51.20090910 cores
More info: The following is a snippet of the code where the patch was applied
and I added debug statements. I added the output (see >>) where the failure
appears to be occuring
if (!info->shared)
{
const char *name;
// DEBUG DEBUG
fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__,
__LINE__ );
// DEBUG DEBUG
name = SGI_COMPAT (abfd) ? "_DYNAMIC_LINK" : "_DYNAMIC_LINKING";
bh = NULL;
if (!(_bfd_generic_link_add_one_symbol
(info, abfd, name, BSF_GLOBAL, bfd_abs_section_ptr, 0,
NULL, FALSE, get_elf_backend_data (abfd)->collect, &bh)))
return FALSE;
// DEBUG DEBUG
fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__,
__LINE__ );
// DEBUG DEBUG
h = (struct elf_link_hash_entry *) bh;
h->non_elf = 0;
h->def_regular = 1;
h->type = STT_SECTION;
// DEBUG DEBUG
fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__,
__LINE__ );
// DEBUG DEBUG
if (! bfd_elf_link_record_dynamic_symbol (info, h))
return FALSE;
// DEBUG DEBUG
fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__,
__LINE__ );
// DEBUG DEBUG
>> DEBUG DEBUG: I AM AT elfxx-mips.c, line 7003
if (! mips_elf_hash_table (info)->use_rld_obj_head)
{
// DEBUG DEBUG
fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__,
__LINE__ );
// DEBUG DEBUG
>> THE PRECEEDING LINE WAS NOT PRINTED
/* __rld_map is a four byte word located in the .data section
and is filled in by the rtld to contain a pointer to
the _r_debug structure. Its symbol value will be set in
_bfd_mips_elf_finish_dynamic_symbol. */
s = bfd_get_section_by_name (abfd, ".rld_map");
// DEBUG DEBUG
fprintf(stderr, "DEBUG DEBUG: I AM AT %s, line %d \n", __FILE__,
__LINE__ );
// DEBUG DEBUG
if (s != NULL)
{
name = SGI_COMPAT (abfd) ? "__rld_map" : "__RLD_MAP";
bh = NULL;
if (!(_bfd_generic_link_add_one_symbol
(info, abfd, name, BSF_GLOBAL, s, 0, NULL, FALSE,
get_elf_backend_data (abfd)->collect, &bh)))
return FALSE;
h = (struct elf_link_hash_entry *) bh;
h->non_elf = 0;
h->def_regular = 1;
h->type = STT_OBJECT;
if (! bfd_elf_link_record_dynamic_symbol (info, h))
return FALSE;
}
}
}
-----Original Message-----
From: Tovrea, George W (US SSA)
Sent: Tuesday, September 15, 2009 8:12 AM
To: 'address@hidden'
Subject: RE: [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores
I tried the patch without success but the problem does appear to be in that
area of the code. I inserted some debug statements and found only one was hit
before the core. I am trying to narrow it down and I'll keep you up to date on
what I find.
Regards,
Bill T.
-----Original Message-----
From: nickc at redhat dot com [mailto:address@hidden
Sent: Monday, September 14, 2009 9:26 AM
To: Tovrea, George W (US SSA)
Subject: [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores
------- Additional Comments From nickc at redhat dot com 2009-09-14 16:26
-------
Hi Bill,
> Not sure why you need simple.o since it is "simple" to compile,
Because without it I have to create a compiler and then compile simple.cc. Plus
I have to hope that I am using the same set of compiler sources as you and that
I have configured the compiler in the same way.
> but it and xerces 28 are attached
Well the simple.o file appears to be missing, but I had a go at creating one for
myself. As a result I have created a workaround patch which *may* work. Please
give it a go and see if it helps. I am not familiar with this particular area
of the linker though, so this is definitely a workaround not a fix.
Cheers
Nick
--
http://sourceware.org/bugzilla/show_bug.cgi?id=10629
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
- [Bug ld/10629] New: GNU ld (GNU Binutils) 2.20.51.20090910 cores, george dot tovrea at baesystems dot com, 2009/09/11
- [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores, nickc at redhat dot com, 2009/09/14
- [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores, george dot tovrea at baesystems dot com, 2009/09/14
- [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores, nickc at redhat dot com, 2009/09/14
- [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores, nickc at redhat dot com, 2009/09/14
- [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores, george dot tovrea at baesystems dot com, 2009/09/14
- [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores, george dot tovrea at baesystems dot com, 2009/09/15
- [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores,
george dot tovrea at baesystems dot com <=
- [Bug ld/10629] GNU ld (GNU Binutils) 2.20.51.20090910 cores, nickc at redhat dot com, 2009/09/25