This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Wierd sparc sunos4 intermittant SEGV during bootstrap in libgcc2.a
- To: wilson at cygnus dot com
- Subject: Re: Wierd sparc sunos4 intermittant SEGV during bootstrap in libgcc2.a
- From: "Kaveh R. Ghazi" <ghazi at caip dot rutgers dot edu>
- Date: Fri, 3 Mar 2000 13:26:40 -0500 (EST)
- Cc: davem at redhat dot com, egcs-bugs at egcs dot cygnus dot com, rth at cygnus dot com
> From: Jim Wilson <wilson@cygnus.com>
>
> I haven't tried any FSF gcc sources on SunOS4 systems here.
>
> However, the Cygnus source tree has been failing on SunOS4 systems
> since our last merge from the FSF gcc source tree. I tracked the
> problem down to a problem with the Sun C library strncmp function
> reading past the end of strings. Now that gcc uses mmap, and we've
> got mmap allocating disjoint memory regions, we end up with many
> places where mapped memory ends. Formerly, there was only one place
> where mapped memory ended, at the end of the heap. When you have lots
> of places where memory ends, there is a much higher change that a
> string will end up against a place where memory ends, and if that
> happens, then you can get a segfault. These failures I saw were
> repeatable though.
Do you know of a way to reliably detect this bug in strncmp and test
for it in autoconf? If so, I can write something for libiberty and
provide a replacement strncmp.
>
> Disabling use of mmap is one of the first things I'd try if I had
> problems with SunOS4.
> Jim
Okay, I'll try that.
(BTW, are you saying you *don't* think it has to do with the sparc
flush instructions or just that I should check mmap first?)
--Kaveh
--
Kaveh R. Ghazi Engagement Manager / Project Services
ghazi@caip.rutgers.edu Qwest Internet Solutions