This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Wierd sparc sunos4 intermittant SEGV during bootstrap in libgcc2.a


 > 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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]