This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/61538] g++ compiled binary, linked to glibc libpthread, hangs on SGI MIPS R1x000 systems on Linux
- From: "pinskia at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 15 Jul 2014 07:38:23 +0000
- Subject: [Bug c++/61538] g++ compiled binary, linked to glibc libpthread, hangs on SGI MIPS R1x000 systems on Linux
- Auto-submitted: auto-generated
- References: <bug-61538-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61538
--- Comment #15 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Joshua Kinard from comment #14)
> (In reply to Andrew Pinski from comment #13)
> > What is the kernel version? There has been some recent (this year) fixes
> > inside the kernel for futex.
> >
> > Though I admit I have seen this just recently when debugging a program where
> > I did next over a pthread_mutex_unlock call.
>
> Was under 3.14.x. I already tried going back to 3.14.0, due to the recent
> futex security flaws covered in CVE-2014-3153. Now on 3.15.5 on the Octane,
> and my test binaries still hang, so I've pretty much ruled out it being the
> kernel.
>
> I've been doing a git bisect of gcc the last few days, and I've pinned the
> problem commit down to somewhere between Jun 12 2012 and June 26 2012.
> anything prior to the 26th works so far, anything after doesn't. My current
> bisect build is going to test June 19 2012 next. Averages about ~7.5hrs for
> gcc and 3.5hrs for glibc to build, so I can cram in roughly, 2 tests a day.
I would try the daily date update right before
30c3c4427521f96fb58b6e1debb86da4f113f06f commit and then bispect from there
because there are a few changes between the daily date update which could have
caused this issue.
>
> So far, I am leaning towards commit 30c3c4427521f96fb58b6e1debb86da4f113f06f
> as the culprit. That was added on June 20th, and I *think* the refactoring
> of the case statement is wrong for MIPS. The logic just doesn't seem to
> work out to be the same as the old code it replaced, and maybe this only is
> a problem on the R10000 processors.
I am also running into a similar issue (though not exactly the same) with a
based GCC 4.7 toolchain with this change in too on Octeon. I am still trying
to debug it and reproduce it.