Rakesh Dhiman wrote:

Hi all,

I am trying to port kaffe-1.1.7 on bsp15 running customized linux 2.6. The following are things which i have done:

Hi Rakesh,

1) Added entries to kaffe-1.1.7/config/config.alias as
    bsp15*)        Khost_cpu=bsp15 ;; inside the case "$Khost_cpu"
2) Added corresponding entries to all config.sub's


thanks for doing that, Rakesh. Could you add the patch for config.sub to http://savannah.gnu.org/patch/?group=config , please ?

3) Created folders kaffe-1.1.7/config/bsp15 and kaffe-1.1.7/config/bsp15/linux
4) Added files
               -  kaffe-1.1.7/config/bsp15/ atomic.h
               -  kaffe-1.1.7/config/bsp15/ common.h
               -  kaffe-1.1.7/config/bsp15/ threads.h
               -  kaffe-1.1.7/ config/bsp15/sysdepCallMethod.h
               -  kaffe-1.1.7/ config/bsp15/linux/config.frag
               -  kaffe-1.1.7/ config/bsp15/linux/md.c
- kaffe-1.1.7/ config/bsp15/linux/md.h

Cool.

The files are pasted below for reference. I have written my own primitive sysdepCallMethod in C (Since i do not have support as far as documentation to bsp15 architecture is concerned), which is running fine as I have checked it thoroughly. I have not changed anything else in the kaffe's code/config structure.

Nice.

5) I have configured the kaffe with follwing configuration script:
./configure --host=bsp15-linux --disable-gtk-peer --without-alsa --without-esd --disable-direct-threading --with-staticlib --with-engine=intrp 6) Cross compiled (make) with my bsp15 based tool chain (by setting CC, AR, NM and CXX).

Sounds good. I've looked if I could find a publicly available cross.compiler toolchain for the bsp15, but couldn't find one.

7) Installed.

My problem:
1) It runs and loads classes upto (when run using -v option) Loading java/lang/IllegalThreadStateException.class and then stucks there without printing anything and without creating any exception ( dump.txt is attached).

when i trace it with printf's, then it reveals that the system goes from
main to JNI_CreateJavaVM ( kaffe-1.1.7/kaffe/kaffevm/jni/jni-base.c) to initialiseKaffe and returns safe from initialiseKaffe. After returning initialiseKaffe, it never goes past reftable = (jnirefs *)gc_malloc(sizeof(jnirefs) + sizeof(jref) * DEFAULT_JNIREFS_NUMBER, KGC_ALLOC_STATIC_THREADDATA); (inside kaffe-1 .1.7/kaffe/kaffevm/jni/jni-base.c just after returning from initialiseKaffe )


You don't have to use printfs for debugging, if you can run gdb on your target. See FAQ.debugging for details.

If Kaffe ends up being stuck in the gc, then you should inspect the build logs (make clean && make >& build.log) for compiler warnings in the gc module. You can also use kaffe -vmdebug LIST to get a list of internal debugging options, and run kaffe with kaffe -vmdebug ALL in the worst case, to get as much debugging logs as possible.

I suspect something is wrong with my architecture/platform dependent settings, such as SP_OFFSET etc (My bsp15/linux system doesn't run kaffe-1.1.7/developers/sp_offset.c) to confirm it.

SP_OFFSET should not really matter for pthreads, afaict, and pthreads are the default threading mechanism.

What may be the wrong? I am pasting my arch/platform dependent files below. Output file (dump.txt) is attached.

Illegal read access to 0x80000000 from user PC 0x242adc; psw=0xa00f0
TID= 575 (kaffe-bin); ASID= 81
TLBS:

Could you get a backtrace in gdb? Or post the output of -vmdebug ALL, alternatively.

cheers,
dalibor topic

_______________________________________________
kaffe mailing list
[email protected]
http://kaffe.org/cgi-bin/mailman/listinfo/kaffe

Reply via email to