[kaffe] JVMPI status?

Jon Nall nall@themountaingoats.net
Tue Mar 9 13:31:02 2004


This is a multi-part message in MIME format.
--------------030305000406050605060403
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit


tim,
thanks for the reply. i'm attaching the diff to this mail. the only bit 
i'm not sure about are the changes in jvmpi_kaffe.c. it looks like 
someone changed the definition of java_lang_String structs. the other 
diffs are just typos.

also, JVMPI functionality still seems broken, even with this patch. i 
get the stack trace attached below. i don't have time to look at it now. 
i might get to it this week, though.

nall.


[nall@hwteam ~/kaffe-1.1.4]$ java -Xruntracer.so foo
GNU gdb Red Hat Linux (5.2-2)
Copyright 2002 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"...
(gdb) run
Starting program: /home/nall/JDKs/kaffe/jre/bin/kaffe-bin -Xruntracer.so foo
loadNativeLib(libtracer.so)
 
Program received signal SIGFPE, Arithmetic exception.
0x4003af10 in gcFree (gcif=0x400bf4d4, mem=0x0) at mem/gc-incremental.c:1249
1249                    idx = GCMEM2IDX(info, unit);

(gdb) where
#0  0x4003af10 in gcFree (gcif=0x400bf4d4, mem=0x0) at 
mem/gc-incremental.c:1249
#1  0x4003b61d in jfree (mem=0x85ef018) at gc.c:34
#2  0x4003764f in kdlfree (ptr=0x85ef018) at 
../../include/kaffe/jmalloc.h:37
#3  0x40078ee3 in foreach_dirinpath (search_path=0x85ef050 
"/home/nall/ejp/tracer/lib", base_name=0x8394714 "libtracer.so",
    func=0x40079220 <find_handle_callback>, data1=0xbfffd848, data2=0x0) 
at ltdl.c:2712
#4  0x400792d6 in find_handle (search_path=0x0, base_name=0x85ef018 "o", 
handle=0xbfffd848) at ltdl.c:2791
#5  0x4007987f in try_dlopen (phandle=0xbfffd874, filename=0xbfffe36e 
"libtracer.so") at ltdl.c:3280
#6  0x40079fdf in lt_dlopen (filename=0x85ef018 "o") at ltdl.c:3411
#7  0x4007a0d5 in lt_dlopenext (filename=0xbfffe36e "libtracer.so") at 
ltdl.c:3463
#8  0x40036dce in loadNativeLibrary2 (path=0xbfffe36e "libtracer.so", 
default_refs=1, errbuf=0xbfffd920 "", errsiz=512) at external.c:293
#9  0x40036cd6 in loadNativeLibrary (lib=0x85ef018 "o", errbuf=0x85ef018 
"o", errsiz=140439576) at external.c:232
#10 0x08048fff in main (argc=1, argv=0xbfffdba4) at main.c:169
#11 0x4012d336 in __libc_start_main (main=0x8048ea0 <main>, argc=3, 
ubp_av=0xbfffdba4, init=0x8048bb8 <_init>, fini=0x804a710 <_fini>,
    rtld_fini=0x4000d2fc <_dl_fini>, stack_end=0xbfffdb9c) at 
../sysdeps/generic/libc-start.c:129


--------------030305000406050605060403
Content-Type: text/plain;
 name="kaffe-jvmpi-1.1.4.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="kaffe-jvmpi-1.1.4.patch"

diff -u -r kaffe-1.1.4-orig/kaffe/jvmpi/jvmpi_kaffe.c kaffe-1.1.4/kaffe/jvmpi/jvmpi_kaffe.c
--- kaffe-1.1.4-orig/kaffe/jvmpi/jvmpi_kaffe.c	2003-10-11 15:45:48.000000000 -0500
+++ kaffe-1.1.4/kaffe/jvmpi/jvmpi_kaffe.c	2004-03-09 14:57:33.000000000 -0600
@@ -182,8 +182,8 @@
 	assert(tid != NULL);
 	
 	ev->event_type = JVMPI_EVENT_THREAD_START;
-	if( (name = stringCharArray2Java(unhand_char_array(tid->name),
-					 obj_length(tid->name))) != NULL )
+	if( (name = stringCharArray2Java(unhand_char_array(tid->name->value),
+					 tid->name->count)) != NULL )
 	{
 		ev->u.thread_start.thread_name = stringJava2C(name);
 	}
diff -u -r kaffe-1.1.4-orig/kaffe/jvmpi/Makefile.am kaffe-1.1.4/kaffe/jvmpi/Makefile.am
--- kaffe-1.1.4-orig/kaffe/jvmpi/Makefile.am	2004-01-14 20:29:29.000000000 -0600
+++ kaffe-1.1.4/kaffe/jvmpi/Makefile.am	2004-03-09 14:56:58.000000000 -0600
@@ -5,7 +5,7 @@
 
 libkaffejvmpi_la_LDFLAGS = \
 	-export-dynamic \
-	-release $(PACKAGE_PERSION)
+	-release $(PACKAGE_VERSION)
 
 libkaffejvmpi_la_DEPENDENCIES = \
 	$(LIBLTDL) \
diff -u -r kaffe-1.1.4-orig/kaffe/jvmpi/Makefile.in kaffe-1.1.4/kaffe/jvmpi/Makefile.in
--- kaffe-1.1.4-orig/kaffe/jvmpi/Makefile.in	2004-02-18 15:18:56.000000000 -0600
+++ kaffe-1.1.4/kaffe/jvmpi/Makefile.in	2004-03-09 14:57:07.000000000 -0600
@@ -314,7 +314,7 @@
 lib_LTLIBRARIES = libkaffejvmpi.la
 libkaffejvmpi_la_LDFLAGS = \
 	-export-dynamic \
-	-release $(PACKAGE_PERSION)
+	-release $(PACKAGE_VERSION)
 
 libkaffejvmpi_la_DEPENDENCIES = \
 	$(LIBLTDL) \
diff -u -r kaffe-1.1.4-orig/kaffe/kaffevm/systems/unix-jthreads/jthread.c kaffe-1.1.4/kaffe/kaffevm/systems/unix-jthreads/jthread.c
--- kaffe-1.1.4-orig/kaffe/kaffevm/systems/unix-jthreads/jthread.c	2004-02-01 16:14:54.000000000 -0600
+++ kaffe-1.1.4/kaffe/kaffevm/systems/unix-jthreads/jthread.c	2004-03-09 14:58:48.000000000 -0600
@@ -2602,7 +2602,7 @@
 /*
  * Check if thread is interrupted.
  */
-int jthread_is_intrerrupted(jthread_t jt)
+int jthread_is_interrupted(jthread_t jt)
 {
 	return (jt->flags & THREAD_FLAGS_INTERRUPTED);
 }

--------------030305000406050605060403--