[kaffe] Kaffe 1.1.6 with ARM problems

Ioannis Liverezas iliverez at inaccessnetworks.com
Wed Dec 21 03:42:03 PST 2005


Hi,

I tried crosscompiling kaffe 1.1.6 for the strongARM processor. When
using native threads, and testing with a 'Hello world' program, most of
the times kaffe would hang while trying to read
java/lang/IllegalThreadStateException.class from rt.jar. It only
succeeded in 2 out of 30 trials.

Trying with jthreads, kaffe runs. Then I run a test for the combined use
of ThreadGroup, Thread.sleep(),  Thread.interrupt(), and synchronized().
The test initiates 46 threads. The threads sleep for various predefined
time periods with Thread.sleep() and then continue their execution. They
also implement a simple handler for the InterruptedException. The main()
function, after starting the threads, enters an infinite loop, in which
when a counter reaches a predefined value, it interrupts some of the
running threads with Thread.interrupt(). The test keeps on running for
about 40 minutes to 4 hours and then it hangs.  The full version of the
test separates the threads into two teams and each team of threads
synchronizes on an object.


The same test also fails with the following JVMs:
kaffe-cvs 8/12/2004 ARM Linux   ( 5 minutes until hang)
kaffe-1.1.6 x86 Linux (< 1minute)
blackdown java 1.3.1 ARM Linux  (5 to 10 hours)
blackdown java 1.3.1 x86 Linux ( 4 minutes)

It works fine with blackdown java 1.4.2 x86 Linux

~iliverez
-------------------------

#java -fullversion

java full version "kaffe-1.4.2"

kaffe VM "1.1.6"

Copyright (c) 1996-2005 Kaffe.org project contributors (please see
  the source code for a full list of contributors).  All rights reserved.
Portions Copyright (c) 1996-2002 Transvirtual Technologies, Inc.

The Kaffe virtual machine is free software, licensed under the terms of
the GNU General Public License.  Kaffe.org is a an independent, free
software
community project, not directly affiliated with Transvirtual Technologies,
Inc.  Kaffe is a Trademark of Transvirtual Technologies, Inc.  Kaffe comes
with ABSOLUTELY NO WARRANTY.

Engine: Interpreter   Version: 1.1.6   Java Version: 1.4
Heap defaults: minimum size: 5 MB, maximum size: unlimited
Stack default size: 64 KB
Configuration/Compilation options:
)  Compile date     : Tue Dec 20 16:45:42 EET 2005
  Compile host     : draco
  Install prefix   : /usr/jre
  Thread system    : unix-jthreads
  Garbage Collector: kaffe-gc
  CC               : arm-linux-gcc
  CFLAGS           : -g -O2 -Wall -W -fsigned-char
-fno-omit-frame-pointer -DENABLE_BINRELOC
  LDFLAGS          :
  ChangeLog head   : 2005-09-20  Dalibor Topic  <robilad at kaffe.org>


--------------------





-------------- next part --------------
A non-text attachment was scrubbed...
Name: SleepTest.java
Type: text/x-java
Size: 6098 bytes
Desc: not available
Url : http://pogo.kaffe.org/pipermail/kaffe/attachments/20051221/13d7842a/SleepTest-0001.bin


More information about the kaffe mailing list