There were 2 errors: 1) testGetAuxv(frysk.proc.TestProcGet)java.lang.RuntimeException: unknown word size for auxv (1|32l|64l|32b|64b 10000) at frysk.sys.proc.AuxvBuilder.construct(TestRunner) at frysk.sys.proc.AuxvBuilder.construct(TestRunner) at frysk.proc.LinuxProc.sendrecAuxv(TestRunner) at frysk.proc.Proc.getAuxv(TestRunner) at frysk.proc.TestProcGet.testGetAuxv(TestRunner) at frysk.junit.Runner.<init>(TestRunner) at TestRunner.main(TestRunner) 2) testCloneSyscall(frysk.proc.TestTaskSyscallObserver)java.lang.RuntimeException: clone's parent in unexpected state syscallRunning at frysk.proc.TaskState.clonedState(TestRunner) at frysk.proc.Task.<init>(TestRunner) at frysk.proc.LinuxTask.<init>(TestRunner) at frysk.proc.LinuxHost$PollWaitOnSigChld$2.cloneEvent(TestRunner) at frysk.sys.Wait.waitAllNoHang(TestRunner) at frysk.proc.LinuxHost$PollWaitOnSigChld.execute(TestRunner) at frysk.event.EventLoop.runEventLoop(TestRunner) at frysk.event.EventLoop.runPolling(TestRunner) at frysk.proc.TestLib.assertRunUntilStop(TestRunner) at frysk.proc.TestLib.assertRunUntilStop(TestRunner) at frysk.proc.TestLib$AckHandler.assertAwait(TestRunner) at frysk.proc.TestLib$AckHandler.await(TestRunner) at frysk.proc.TestLib$AckProcess.spawn(TestRunner) at frysk.proc.TestLib$AckProcess.assertSendAddCloneWaitForAcks(TestRunner) at frysk.proc.TestTaskSyscallObserver.testCloneSyscall(TestRunner) at frysk.junit.Runner.<init>(TestRunner) at TestRunner.main(TestRunner) There were 2 failures: 1) testI386Regs(frysk.proc.TestI386Regs)junit.framework.AssertionFailedError: orig_eax register expected:<1> but was:<0> at frysk.proc.TestI386Regs.testI386Regs(TestRunner) at frysk.junit.Runner.<init>(TestRunner) at TestRunner.main(TestRunner) 2) testExecSyscall(frysk.proc.TestTaskSyscallObserver)junit.framework.AssertionFailedError: Caught exec syscall expected:<false> but was:<true> at frysk.proc.TestTaskSyscallObserver.testExecSyscall(TestRunner) at frysk.junit.Runner.<init>(TestRunner) at TestRunner.main(TestRunner)
Oh, as of now, there are about 40 ``failures'' and about 10 ``errors'' A typical ``failure'' looks like this: 38) testTerminatedKillHUP(frysk.proc.TestTaskTerminateObserver)junit.framework.AssertionFailedError: event loop run explictly stopped (startChild (Sig_USR1)) at frysk.proc.TestLib.assertRunUntilStop(TestRunner) at frysk.proc.TestLib.assertRunUntilStop(TestRunner) at frysk.proc.TestLib$AckHandler.assertAwait(TestRunner) at frysk.proc.TestLib$AckHandler.await(TestRunner) at frysk.proc.TestLib$Child.<init>(TestRunner) at frysk.proc.TestLib$AckProcess.<init>(TestRunner) at frysk.proc.TestLib$AckProcess.<init>(TestRunner) at frysk.proc.TestLib$DetachedAckProcess.<init>(TestRunner) at frysk.proc.TestLib$AttachedDaemonProcess.<init>(TestRunner) at frysk.proc.TestTaskTerminateObserver.check(TestRunner) at frysk.proc.TestTaskTerminateObserver.terminated(TestRunner) at frysk.proc.TestTaskTerminateObserver.testTerminatedKillHUP(TestRunner) at frysk.junit.Runner.<init>(TestRunner) A typical ``error'' looks like this: 11) testBlockingWhileTerminating(frysk.proc.TestTaskTerminateObserver)java.lang.NullPointerException at frysk.proc.TestTaskTerminateObserver.testBlockingWhileTerminating(TestRunner) at frysk.junit.Runner.<init>(TestRunner) at TestRunner.main(TestRunner)
OK, so the mass break from comment #1 is fixed now. The problems described in the original submission are still not solved on i386, I'll mark them with brokenXXX(3005) in the CVS. (The same tests pass on x86_64.)
No, they should not be marked by brokenXXX, because that would exclude them from junit runs, too.
Could you add some more info about the environment and versions you are using? ./TestRunner frysk.proc.TestProcGet passes for me on both: 2.6.17-1.2174_FC5 x86_64 GNU/Linux 2.6.17-1.2573.fc6 i686 i386 GNU/Linux ./TestRunner frysk.proc.TestTaskSyscallObserver passes on: 2.6.17-1.2174_FC5 x86_64 GNU/Linux But fails (1 in 3) when run on: 2.6.17-1.2573.fc6 i686 i386 GNU/Linux 1) testCloneSyscall(frysk.proc.TestTaskSyscallObserver)junit.framework.AssertionFailedError: event loop run explictly stopped (assertSendAddCloneWaitForAcks (Sig_USR1,Sig_USR2)) at frysk.proc.TestLib.assertRunUntilStop(TestRunner) at frysk.proc.TestLib.assertRunUntilStop(TestRunner) at frysk.proc.TestLib$AckHandler.assertAwait(TestRunner) at frysk.proc.TestLib$AckHandler.await(TestRunner) at frysk.proc.TestLib$AckProcess.spawn(TestRunner) at frysk.proc.TestLib$AckProcess.assertSendAddCloneWaitForAcks(TestRunner) at frysk.proc.TestTaskSyscallObserver.testCloneSyscall(TestRunner) at frysk.junit.Runner.<init>(TestRunner) at TestRunner.main(TestRunner)
I'm runnig the tests as part of the build on a build server. IIRC, they usually have RHEL4, which should mean RHEL 4U4 these days. (Details in another comment later/below.) So yes, if the problem can be blamed on an obsolete kernel, then the fix is to switch this check off in the spec file. But I'm not able to judge this.
The build system uses: Linux 2.6.9-34.ELsmp #1 SMP Fri Feb 24 16:56:28 EST 2006 i686 i686 i386 GNU/Linux If the problems can be blamed on this kernel, then the right solution is to switch off the checks (at the build time only).