Casey Marshall wrote:
Thomas Fitzsimmons wrote:

OK, the new patches build for me (though I had to add KqueueSelectorImpl
lines to include/Makefile.am) but now running rmiregistry under cacao
fails like this:

$ gdb --args /notnfs/fitzsim/install/classpath-inst/bin/cacao
gnu.java.rmi.registry.RegistryImpl
GNU gdb Red Hat Linux (6.3.0.0-1.122rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host
libthread_db library "/lib/libthread_db.so.1".

(gdb) r
Starting program: /notnfs/fitzsim/install/classpath-inst/bin/cacao
gnu.java.rmi.registry.RegistryImpl
Reading symbols from shared object read from target memory...done.
Loaded system supplied DSO at 0x2d3000
[Thread debugging using libthread_db enabled]
[New Thread -1209055568 (LWP 8805)]
[New Thread 2132896 (LWP 8808)]
[New Thread 1186720 (LWP 8809)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1209055568 (LWP 8805)]
0x00387c3d in GetDirectBufferAddress (env=0x8343038, buf=0x83a0a10) at
/home/fitzsim/workspace/cacao/src/native/jni.c:5324
5324            return (void *) address->data;
(gdb) p address
$1 = (gnu_classpath_Pointer32 *) 0x0
(gdb) bt
#0  0x00387c3d in GetDirectBufferAddress (env=0x8343038, buf=0x83a0a10)
at /home/fitzsim/workspace/cacao/src/native/jni.c:5324
#1  0x0023ee02 in JCL_init_buffer (env=0x8343038, buf=0xbfd00f80,
bbuf=0x83a0a10)
    at
/home/fitzsim/workspace/classpath/native/jni/java-nio/gnu_java_nio_VMChannel.c:139

#2  0x0023ff56 in
Java_gnu_java_nio_VMChannel_read__ILjava_nio_ByteBuffer_2
(env=0x8343038, o=0x839f098, fd=8, bbuf=0x83a0a10)
    at
/home/fitzsim/workspace/classpath/native/jni/java-nio/gnu_java_nio_VMChannel.c:368

#3  0x00852c02 in ?? ()
#4  0x08343038 in ?? ()
#5  0x0839f098 in ?? ()
#6  0x00000008 in ?? ()
#7  0x083a0a10 in ?? ()
#8  0x0023ff20 in
Java_gnu_java_nio_VMChannel_write__ILjava_nio_ByteBuffer_2 ()
    at
/home/fitzsim/workspace/classpath/native/jni/java-nio/gnu_java_nio_VMChannel.c:445

Previous frame inner to this frame (corrupt stack?)
(gdb)

Have you seen this failure?


No, I haven't.

Does cacao support GetDirectBufferAddress properly? There may be a bug
there.

It would seem so. JamVM works fine for rmiregistry. And your patch makes my RMI program work again. CC'ing Christian about the cacao bug.

Thanks,
Tom

Reply via email to