From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29083 invoked by alias); 25 Apr 2013 19:46:37 -0000 Mailing-List: contact java-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-prs-owner@gcc.gnu.org Received: (qmail 29061 invoked by uid 48); 25 Apr 2013 19:46:37 -0000 From: "rsa at us dot ibm.com" To: java-prs@gcc.gnu.org Subject: [Bug libgcj/57074] New: gcc-4.8.0 libgcj regression on 32bit Power architecture Date: Thu, 25 Apr 2013 19:46:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libgcj X-Bugzilla-Keywords: X-Bugzilla-Severity: critical X-Bugzilla-Who: rsa at us dot ibm.com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-SW-Source: 2013-q2/txt/msg00006.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57074 Bug #: 57074 Summary: gcc-4.8.0 libgcj regression on 32bit Power architecture Classification: Unclassified Product: gcc Version: 4.8.1 Status: UNCONFIRMED Severity: critical Priority: P3 Component: libgcj AssignedTo: unassigned@gcc.gnu.org ReportedBy: rsa@us.ibm.com GCC Revision 186687 has been identified as causing a regression in PowerC 32-bit libgcj: http://gcc.gnu.org/viewcvs/gcc?view=revision&revision=186687 I've verified that this fails with upstream GCC: ryanarn@bns:~> /home/bergner/gcc/install/gcc-fsf-4_8-java32/bin//gkeytool -import -alias `basename 99.pem .pem` -keystore cacerts -storepass '' -file 99.pem Exception in thread "main" java.lang.NoClassDefFoundError: gnu.classpath.tools.keytool.Main at java.lang.Class.initializeClass(libgcj.so.14) Caused by: java.lang.IllegalMonitorStateException: current thread not owner at java.lang.Object.notifyAll(libgcj.so.14) at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.14) at java.lang.ClassLoader.loadClass(libgcj.so.14) at java.lang.ClassLoader.loadClass(libgcj.so.14) at java.lang.Class.initializeClass(libgcj.so.14) If this wasn't failing it would be reporting: ryanarn@bns:~> ryanarn@bns:~> /home/bergner/gcc/install/gcc-fsf-4_8-java/bin/gkeytool -import -alias `basename 99.pem .pem` -keystore cacerts -storepass '' -file 99.pem keytool error: java.security.InvalidParameterException: File object [99.pem] MUST be an existing readable file /home/bergner/gcc/install/gcc-fsf-4_8-java/bin/gkeytool -import -alias `basename 99.pem .pem` -keystore cacerts -storepass '' -file 99.pem keytool error: java.security.InvalidParameterException: File object [99.pem] MUST be an existing readable file I'm able to trap on the catch, but trying to capture the throw or identify the state of the GCJ locking mechanisms when the problem happens has proven problematic. Turning on logging and lock debugging might help, but there's a lot going on in the state initialization. Here's a back trace: Breakpoint 8, _Jv_Linker::wait_for_state (klass=klass@entry=0x10020018 , state=state@entry=9) at ../../../libjava/link.cc:2086 2086 throw exc; $8 = "In the wait_for_state catch." klass: 0x10020018 (gdb) bt #0 _Jv_Linker::wait_for_state (klass=klass@entry=0x10020018 , state=state@entry=9) at ../../../libjava/link.cc:2086 #1 0x0e2c2aec in java::lang::Class::initializeClass (this=0x10020018 ) at ../../../libjava/java/lang/natClass.cc:728 #2 0x0e2c39b4 in _Jv_InitClass (klass=) at ../../../libjava/java/lang/Class.h:742 #3 0x0fe3eabc in gnu.classpath.tools.keytool.Main.main(java.lang.String[])void (args=@f7d4ad50) at ../../../../../libjava/classpath/tools/gnu/classpath/tools/keytool/Main.java:137 #4 0x0e2b63c0 in gnu::java::lang::MainThread::call_main (this=this@entry=0xf7ce7f60) at ../../../libjava/gnu/java/lang/natMainThread.cc:54 #5 0x0e33f3dc in gnu.java.lang.MainThread.run()void (this=@f7ce7f60) at /usr/src/debug/gcc-4.8.0-20130412/libjava/gnu/java/lang/MainThread.java:106 #6 0x0e2cce88 in _Jv_ThreadRun (thread=0xf7ce7f60) at ../../../libjava/java/lang/natThread.cc:335 #7 0x0e26e6fc in _Jv_RunMain (vm_args=vm_args@entry=0x0, klass=, name=name@entry=0x0, argc=, argv=, is_jar=) at ../../../libjava/prims.cc:1790 #8 0x0e26e944 in _Jv_RunMain (klass=, name=name@entry=0x0, argc=, argv=, is_jar=is_jar@entry=false) at ../../../libjava/prims.cc:1815 #9 0x0e26e9a0 in JvRunMain (klass=, argc=, argv=) at ../../../libjava/prims.cc:1821 #10 0x0d1c17f4 in generic_start_main (main=0x100004c0
, argc=10, ubp_av=0xfffef6f4, auxvec=0xfffef774, init=, rtld_fini=, stack_end=, fini=) at ../csu/libc-start.c:258 #11 0x0d1c1990 in __libc_start_main (argc=, ubp_av=, ubp_ev=, auxvec=, rtld_fini=, stinfo=, stack_on_entry=) at ../sysdeps/unix/sysv/linux/powerpc/libc-start.c:91 #12 0x00000000 in ?? ()