public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "kumba at gentoo dot org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/61538] New: g++ compiled binary, linked to glibc libpthread, hangs on SGI MIPS R1x000 systems on Linux Date: Tue, 17 Jun 2014 17:31:00 -0000 [thread overview] Message-ID: <bug-61538-4@http.gcc.gnu.org/bugzilla/> (raw) https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61538 Bug ID: 61538 Summary: g++ compiled binary, linked to glibc libpthread, hangs on SGI MIPS R1x000 systems on Linux Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: major Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: kumba at gentoo dot org CC: toolchain at gentoo dot org Host: mips-unknown-linux-gnu Target: mips-unknown-linux-gnu Build: mips-unknown-linux-gnu I appear to have run into a regression in g++/libstdc++, starting with at least 4.8.2, where a simple binary built by g++ and linked to glibc-2.19's libpthread causes the binary to hang on a kernel futex() syscall (syscall #4328 in o32 ABI) until killed or interrupted w/ ctrl-C. I have replicated this problem in an o32 environment, as well as an n32 and n64 multilib environment. So far, the identified trigger conditions are: - Must be an R10000-based SGI system (SGI O2 w/ RM7000 does not reproduce) - Must compile testcase w/ 'g++' (compiling with 'gcc' works fine) - Must link w/ -lpthread from at least glibc-2.19 (doesn't seem to trigger on older versions). - Must be gcc-4.8.2 or greater (gcc-4.6.4 and gcc-4.7.3 both work fine). I ran into this while getting Linux support for the SGI Octane operational again and rebuilding a ~5-year old Gentoo userland on the machine. I at first thought it was a problem with old libs still living on the system that I haven't purged just yet, but I have been able to recreate the problem in a clean n32/n64 Gentoo stage3 chroot. The Octane in particular has an R14000 CPU module installed right now, though I can also trigger the condition on an R12000 CPU module as well. I don't have any other working R1x000-capable SGI hardware available at the moment to test this on, so this could still be a quirky bug in the Octane's kernel, but I believe this is less likely since I can trigger the problem only with specific versions of libstdc++. Sample C code that I can use to trigger the issue with from Python-3.3.5's configure script (where it etsts for thread support): # cat conftest.c void foo();int main(){foo();}void foo(){} Compiler command line: # g++ -o conftest conftest.c -lpthread # ./conftest <hang> Overriding LD_PRELOAD to use libstdc++ from an earlier gcc: # LD_PRELOAD=/usr/lib/gcc/mips-unknown-linux-gnu/4.9.0/libstdc++.so.6 ./conftest <hang> # LD_PRELOAD=/usr/lib/gcc/mips-unknown-linux-gnu/4.8.2/libstdc++.so.6 ./conftest <hang> # LD_PRELOAD=/usr/lib/gcc/mips-unknown-linux-gnu/4.7.3/libstdc++.so.6 ./conftest <returns> I don't have much more than that at the moment, but let me know if there are specific command outputs needed to further determine what the cause of this problem is.
next reply other threads:[~2014-06-17 17:31 UTC|newest] Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-06-17 17:31 kumba at gentoo dot org [this message] 2014-06-17 18:07 ` [Bug c++/61538] " kumba at gentoo dot org 2014-06-18 16:55 ` redi at gcc dot gnu.org 2014-06-18 22:06 ` kumba at gentoo dot org 2014-06-19 1:11 ` pinskia at gcc dot gnu.org 2014-06-19 1:54 ` kumba at gentoo dot org 2014-06-19 4:58 ` kumba at gentoo dot org 2014-06-21 1:21 ` kumba at gentoo dot org 2014-06-21 1:59 ` kumba at gentoo dot org 2014-07-06 20:29 ` kumba at gentoo dot org 2014-07-15 5:02 ` pinskia at gcc dot gnu.org 2014-07-15 6:42 ` kumba at gentoo dot org 2014-07-15 7:38 ` pinskia at gcc dot gnu.org 2014-07-21 7:00 ` kumba at gentoo dot org 2014-07-21 7:10 ` [Bug regression/61538] gcc after commit 39a8c5ea produces bad code for MIPS R1x000 CPUs kumba at gentoo dot org 2014-07-21 7:17 ` kumba at gentoo dot org 2014-10-21 6:04 ` pinskia at gcc dot gnu.org 2014-10-21 6:30 ` kumba at gentoo dot org 2015-02-16 6:41 ` kumba at gentoo dot org 2015-02-18 8:22 ` kumba at gentoo dot org 2015-02-18 9:24 ` pinskia at gcc dot gnu.org
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-61538-4@http.gcc.gnu.org/bugzilla/ \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).