IRIX6.5 + PTHREAD?!
dan
dan at csl.csam.iit.edu
Thu Apr 13 13:24:19 PDT 2000
I apreciate any comments to get Kaffe working on a 12-CPU IRIX6.5 system
withPOSIX threads. A list for things to be done would be preferred.
> > 1) It looks like the thread does not get suspended?
> > ==> The assertion in ./systems/unix-pthread/thread-impl.h fails:
> > assert(nt->suspendState == SS_SUSPENDED);
>
> That's kaffe-level "suspend" and not the pthread-level suspend. Given
> the next error you encounter, I suspect that the synchronization stuff
> isn't working for you... Are you on a multiprocessor box?
>
Yes. It is a multiprocessor box with SGI IRIX6.5 and 12 processors.
> > However, if I comment it out, the following error occurs!
> > 2)
> > ==> locks.c:147: failed assertion `*lkp == LOCKINPROGRESS'
>
> Look at locks.[ch], and see if the atomic compare stuff is being
> defined correctly for your system.
>
> In the future, it would help if you said which test cases you were
> running (or all if they all fail...) and if you could get a backtrace
> via gdb or some other debugger, that would also be good.
>
I have my multithreaded test version. The above errors are collected from
my testprogram.
class SimpleThread extends Thread {
public SimpleThread(String str) {
super(str);
}
public void run() {
//System.out.println("thread start");
System.gc();
for (int i=0; i<1000; i++) {
System.out.println(i+" "+getName());
try {
sleep((int) (Math.random())*10000);
} catch (InterruptedException e) {}
}
System.out.println("DONE! "+ getName());
}
}
class TwoThreadsTest {
public static void main (String args[]) {
System.out.println("Starting...");
new SimpleThread("Lo").start();
//System.gc();
new SimpleThread("Chia").start();
new SimpleThread("Tien").start();
new SimpleThread("Dan").start();
}
}
However, the following test report (part of) was collected from "make
check".
FAIL: ModuloTest.java
FAIL: LongNeg.java
FAIL: ttest.java
FAIL: ThreadInterrupt.java
run[9]: 1531964 Memory fault
FAIL: ThreadState.java
FAIL: UncaughtException.java
run[6]: 1520910 Abort
FAIL: Preempt.java
FAIL: SignedShort.java
FAIL: CharCvt.java
FAIL: ProcessTest.java
FAIL: UDPTest.java
> AFAIK, the unix-pthreads port has only really been tested on Linux, so
> you're probably breaking new ground here.
>
Thanks.
More information about the kaffe
mailing list