two darwin issues

Geoff Strom stromgt@speakeasy.net
Wed Feb 25 03:57:00 GMT 2004


I've built recent cvs versions of 3.4 on both Jaguar and Panther and can happily report that both JNI and threads seem to work fine.

However I am seeing two specific failures that I'm not able to adequately debug.

The first is running SWT programs. I can compile a SWT based program fine. When running it certainly looks like it is linking to the .dylib correctly, but it always dies after some delay with a "Bus Error" (condensed crash log #1 below).

The second issue seems like a regression. I can build and run Mozilla's Rhino interpreter and it works great for pure javascript. Any time I attempt to use LiveConnect and load Java objects, it dies immediately (condensed crash log #2 below). I swear this worked for me before when I was working with GCC 3.3.1 (FSF).

Could either of these be affected by gc? Should I try updating to 6.3alpha4?

How can I help find the real issues here?

Thanks,
Geoff

Crash Log #1

**********

Date/Time:      2004-02-19 21:39:53 -0600
OS Version:     10.3.2 (Build 7D24)
Report Version: 2

Command: TabFolderTest
Path:    ./TabFolderTest
Version: ??? (???)
PID:     454
Thread:  0

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_INVALID_ADDRESS (0x0001) at 0x307b307c

Thread 0 Crashed:
0   <<00000000>> 	0x307b307c 0 + 0x307b307c
1   TabFolderTest     	0x00046dd8 org::eclipse::swt::internal::carbon::OS::GetCurrentProcess(JArray<int>*) + 0x7c (cclMxZDB.i:12)
2   TabFolderTest     	0x00069274 org::eclipse::swt::widgets::Display::<clinit>() + 0xa10 (cclMxZDB.i:12)
3   libgcj.5.dylib    	0x02bc8efc java::lang::Class::initializeClass() + 0x110 (natClass.cc:830)
4   libgcj.5.dylib    	0x02b97e90 _Jv_AllocObjectNoFinalizer + 0x60 (Class.h:279)
5   TabFolderTest     	0x000f96e8 TabFolderTest::main(JArray<java::lang::String*>*) + 0x9c (cclMxZDB.i:12)
6   libgcj.5.dylib    	0x02bbfce8 gnu::gcj::runtime::FirstThread::call_main() + 0xe0 (natFirstThread.cc:47)
7   libgcj.5.dylib    	0x02bd05c0 Jv_ThreadRun(java::lang::Thread*) + 0x2c (natThread.cc:293)
8   libgcj.5.dylib    	0x02b9911c Jv_RunMain(java::lang::Class*, char const*, int, char const**, bool) + 0x13c (prims.cc:1017)
9   TabFolderTest     	0x00001d78 main + 0x4c (cclMxZDB.i:12)
10  TabFolderTest     	0x00001a64 _start + 0x188 (crt.c:267)
11  dyld              	0x8fe1a700 _dyld_start + 0x64

Thread 1:
0   libSystem.B.dylib 	0x90017048 semaphore_wait_signal_trap + 0x8
1   libSystem.B.dylib 	0x9000e890 _pthread_cond_wait + 0x270
2   libgcj.5.dylib    	0x02e2e7c8 Jv_CondWait(_Jv_ConditionVariable_t*, _Jv_Mutex_t*, long long, int) + 0x104 (posix-threads.cc:153)
3   libgcj.5.dylib    	0x02bcba00 java::lang::Object::wait(long long, int) + 0x74 (natObject.cc:219)
4   libgcj.5.dylib    	0x02c5cab0 gnu::gcj::runtime::FinalizerThread::run() + 0x44 (FinalizerThread.java:69)
5   libgcj.5.dylib    	0x02bd05c0 Jv_ThreadRun(java::lang::Thread*) + 0x2c (natThread.cc:293)
6   libgcj.5.dylib    	0x02e2ed70 really_start(void*) + 0x38 (posix-threads.cc:382)
7   libgcj.5.dylib    	0x02e405d4 GC_start_routine + 0x100 (pthread_support.c:1180)
8   libSystem.B.dylib 	0x900247e8 _pthread_body + 0x28

PPC Thread State:
  srr0: 0x307b307c srr1: 0x4000f030                vrsave: 0x00000000
    cr: 0x42004444  xer: 0x20000016   lr: 0x0060e5b0  ctr: 0x307b307c
    r0: 0x307b307c   r1: 0xbffffa10   r2: 0xa00011ac   r3: 0x011020d0
    r4: 0x0044ce40   r5: 0x00000000   r6: 0xbffff5a8   r7: 0x00000000
    r8: 0x00000000   r9: 0x030475c0  r10: 0x00000004  r11: 0x03191ebc
   r12: 0x307b307c  r13: 0x00000000  r14: 0x00000000  r15: 0x00000000
   r16: 0x00000000  r17: 0x00000000  r18: 0x00000000  r19: 0x00000000
   r20: 0x00000000  r21: 0x00189654  r22: 0x00000000  r23: 0x00000000
   r24: 0x00000000  r25: 0x0018d318  r26: 0x0027cc00  r27: 0x0044ce40
   r28: 0x00196d64  r29: 0x00176d64  r30: 0xbffffa10  r31: 0x00046d64


Crash Log #2

**********

Date/Time:      2004-02-19 21:00:48 -0600
OS Version:     10.3.2 (Build 7D24)
Report Version: 2

Command: Shell
Path:    ./Shell
Version: ??? (???)
PID:     401
Thread:  0

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_PROTECTION_FAILURE (0x0002) at 0x00000000

Thread 0 Crashed:
0   <<00000000>> 	0x00000000 0 + 0
1   libgcj.5.dylib    	0x02e41dd8 ffi_call + 0xdc (ffi_darwin.c:403)
2   libgcj.5.dylib    	0x02bd4824 Jv_CallAnyMethodA(java::lang::Object*, java::lang::Class*, _Jv_Method*, bool, bool, JArray<java::lang::Class*>*, jvalue*, jvalue*, bool) + 0x3d8 (natMethod.cc:497)
3   libgcj.5.dylib    	0x02bd4de8 Jv_CallAnyMethodA(java::lang::Object*, java::lang::Class*, _Jv_Method*, bool, JArray<java::lang::Class*>*, JArray<java::lang::Object*>*) + 0x2ec (natMethod.cc:619)
4   Shell             	0x0007eb28 0x1000 + 0x7db28
5   Shell             	0x0001e198 0x1000 + 0x1d198
6   Shell             	0x00081d38 0x1000 + 0x80d38
7   Shell             	0x00086784 0x1000 + 0x85784
8   libgcj.5.dylib    	0x02e42234 ffi_call_DARWIN + 0xd0 (darwin.S:120)
9   libgcj.5.dylib    	0x02e41dd8 ffi_call + 0xdc (ffi_darwin.c:403)
10  libgcj.5.dylib    	0x02e41784 ffi_java_raw_call + 0x60 (java_raw_api.c:233)
11  libgcj.5.dylib    	0x02bac0e4 Jv_InterpMethod::run(void*, ffi_raw*) + 0x3d0 (interpret.cc:1169)
12  libgcj.5.dylib    	0x02e41804 ffi_java_translate_args + 0x6c (java_raw_api.c:258)
13  libgcj.5.dylib    	0x02e42064 ffi_closure_helper_DARWIN + 0x138 (ffi_darwin.c:702)
14  libgcj.5.dylib    	0x02e42304 ffi_closure_ASM + 0x74 (darwin_closure.S:94)
15  libgcj.5.dylib    	0x02e42234 ffi_call_DARWIN + 0xd0 (darwin.S:120)
16  libgcj.5.dylib    	0x02e41dd8 ffi_call + 0xdc (ffi_darwin.c:403)
17  libgcj.5.dylib    	0x02e41784 ffi_java_raw_call + 0x60 (java_raw_api.c:233)
18  libgcj.5.dylib    	0x02bac0e4 Jv_InterpMethod::run(void*, ffi_raw*) + 0x3d0 (interpret.cc:1169)
19  libgcj.5.dylib    	0x02e41804 ffi_java_translate_args + 0x6c (java_raw_api.c:258)
20  libgcj.5.dylib    	0x02e42064 ffi_closure_helper_DARWIN + 0x138 (ffi_darwin.c:702)
21  libgcj.5.dylib    	0x02e42304 ffi_closure_ASM + 0x74 (darwin_closure.S:94)
22  Shell             	0x00012610 0x1000 + 0x11610
23  Shell             	0x000075c8 0x1000 + 0x65c8
24  Shell             	0x00007fa8 0x1000 + 0x6fa8
25  libgcj.5.dylib    	0x02bbfce8 gnu::gcj::runtime::FirstThread::call_main() + 0xe0 (natFirstThread.cc:47)
26  libgcj.5.dylib    	0x02bd05c0 Jv_ThreadRun(java::lang::Thread*) + 0x2c (natThread.cc:293)
27  libgcj.5.dylib    	0x02b9911c Jv_RunMain(java::lang::Class*, char const*, int, char const**, bool) + 0x13c (prims.cc:1017)
28  Shell             	0x00002c28 0x1000 + 0x1c28
29  Shell             	0x00002914 0x1000 + 0x1914
30  dyld              	0x8fe1a700 _dyld_start + 0x64

Thread 1:
0   libSystem.B.dylib 	0x90017048 semaphore_wait_signal_trap + 0x8
1   libSystem.B.dylib 	0x9000e890 _pthread_cond_wait + 0x270
2   libgcj.5.dylib    	0x02e2e7c8 Jv_CondWait(_Jv_ConditionVariable_t*, _Jv_Mutex_t*, long long, int) + 0x104 (posix-threads.cc:153)
3   libgcj.5.dylib    	0x02bcba00 java::lang::Object::wait(long long, int) + 0x74 (natObject.cc:219)
4   libgcj.5.dylib    	0x02c5cab0 gnu::gcj::runtime::FinalizerThread::run() + 0x44 (FinalizerThread.java:69)
5   libgcj.5.dylib    	0x02bd05c0 Jv_ThreadRun(java::lang::Thread*) + 0x2c (natThread.cc:293)
6   libgcj.5.dylib    	0x02e2ed70 really_start(void*) + 0x38 (posix-threads.cc:382)
7   libgcj.5.dylib    	0x02e405d4 GC_start_routine + 0x100 (pthread_support.c:1180)
8   libSystem.B.dylib 	0x900247e8 _pthread_body + 0x28

PPC Thread State:
  srr0: 0x00000000 srr1: 0x4000f030                vrsave: 0x00000000
    cr: 0x20042422  xer: 0x20000004   lr: 0x02e42234  ctr: 0x00000000
    r0: 0x02e421ac   r1: 0xbfffead0   r2: 0x00266820   r3: 0x004a6240
    r4: 0x004718c0   r5: 0x00000000   r6: 0x00000000   r7: 0x00000000
    r8: 0x00000000   r9: 0x00000000  r10: 0x00000000  r11: 0x00000000
   r12: 0x00000000  r13: 0x03047150  r14: 0x004a6240  r15: 0x03194464
   r16: 0x03190a98  r17: 0x03047318  r18: 0x030473b0  r19: 0x03047448
   r20: 0x030474e0  r21: 0xbfffebc0  r22: 0x002b4eac  r23: 0x00000002
   r24: 0xbfffec00  r25: 0x00000001  r26: 0x00000000  r27: 0xbfffecf8
   r28: 0xbfffeb20  r29: 0x00000000  r30: 0xbfffec40  r31: 0x00000000





More information about the Java mailing list