Crash in garbage collection(?) under GCC 3.3 & GCC 3.4
Øyvind Harboe
oyvind.harboe@zylin.com
Thu Jul 24 09:09:00 GMT 2003
> On 2003年7月23日, [iso-8859-1] Øyvind Harboe wrote:
> > Is it realistic to copy over these changes to the GCJ 3.3 branch?
>> The 6.2 GC will likely be imported soon to mainline, which
> will become 3.4.
I'll be sure to test Mohans build as soon as this is available
to see if it fixes the bug.
I had a quick look at gc6.2alpha6, but I don't speak GCC and
GC nearly well enough to make much of it. Seems like the
SEH is in mark.c. I don't really know how to go about
testing GC 6.2 with GCC 3.3. I was able to configure and
build GC 6.2 easily enough, but I don't know if I can just
link my app with the 6.2 garbage collector and if I can I
don't know how to do it.
http://www.hpl.hp.com/personal/Hans_Boehm/gc/
It is not immediately obvious from the stack trace(at least not
to me) that 3.3 and 3.4 have the same problem though. Below is a
stack trace from GCC 3.4.
Program received signal SIGSEGV, Segmentation fault.
0x0040a998 in _Jv_NewString ()
(gdb) thread apply all bt
Thread 3 (thread 3988.0xe64):
#0 0x004b6455 in GC_build_fl ()
#1 0x004b65dd in GC_new_hblk ()
#2 0x00460406 in GC_allocobj ()
#3 0x0042e5fb in GC_generic_malloc_inner ()
#4 0x0042e6a6 in GC_generic_malloc ()
#5 0x0042e88f in GC_malloc_atomic ()
#6 0x00402814 in _Jv_NewPrimArray ()
#7 0x00405b5c in _ZN3gnu3gcj7runtime12StringBufferC1Ei ()
#8 0x00405b29 in _ZN3gnu3gcj7runtime12StringBufferC1Ev ()
#9 0x004014cb in Test.replaceAll(java.lang.String, java.lang.String,
java.lang.
String) (in=0xc5cab0, a=0xc5ca98, b=0xc3efd8) at Test.java:17
#10 0x00401a8c in Test.stressGB(java.lang.String) (thread=0xc3b990) at
Test.java
:62
#11 0x004012bf in Test1ドル.run() (this=0xc3dfd0) at Test.java:34
#12 0x004060d6 in _ZN4java4lang6Thread3runEv ()
#13 0x004197f7 in _Z13_Jv_ThreadRunPN4java4lang6ThreadE ()
#14 0x00418d90 in _Z12really_startPv@4 ()
#15 0x004631ee in thread_start@4 ()
#16 0x77e7d33b in RegisterWaitForInputIdle () from
/ecos-C/WINDOWS/system32/kern
el32.dll
Thread 2 (thread 3988.0x7c0):
#0 0x7ffe0304 in ?? ()
#1 0x77e75faa in WaitForMultipleObjects () from
/ecos-C/WINDOWS/system32/kernel
32.dll
#2 0x00411493 in _ZN4java4lang6Object4waitExi ()
#3 0x004056c9 in _ZN4java4lang6Object4waitEv ()
#4 0x00413f5f in _ZN3gnu3gcj7runtime15FinalizerThread3runEv ()
#5 0x004197f7 in _Z13_Jv_ThreadRunPN4java4lang6ThreadE ()
#6 0x00418d90 in _Z12really_startPv@4 ()
#7 0x004631ee in thread_start@4 ()
#8 0x77e7d33b in RegisterWaitForInputIdle () from
/ecos-C/WINDOWS/system32/kern
el32.dll
Thread 1 (thread 3988.0x134):
#0 0x0040a998 in _Jv_NewString ()
#1 0x004013d8 in Test.replaceAll(java.lang.String, java.lang.String,
java.lang.
String) (in=0x108f378, a=0x108f360, b=0xc3efd8) at Test.java:10
#2 0x00401a8c in Test.stressGB(java.lang.String) (thread=0xc3b9c0) at
Test.java
:62
#3 0x004016dd in Test.main(java.lang.String[]) (args=0xc36fe0) at
Test.java:39
#4 0x004143d2 in _ZN3gnu3gcj7runtime11FirstThread3runEv ()
#5 0x004197f7 in _Z13_Jv_ThreadRunPN4java4lang6ThreadE ()
#6 0x004037bf in _Z11_Jv_RunMainPN4java4lang5ClassEPKciPS4_b ()
#7 0x0040388f in JvRunMain ()
#8 0x00401282 in main (argc=1, argv=0x3d2440) at
C:/DOCUME~1/oyvind/LOCALS~1/Te
mp/ccekdaaa.i:11
(gdb)
> 3.3 is not getting much activity right now.
> (The 3.3.1 release is imminent, and if there is a 3.3.2 it
> will merely be a bugfix
> release.)
I see that this bug has been added to the 3.3.2 target milestone.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=10746
Øyvind
More information about the Java
mailing list