Summary: | Long send/expect sequences in the hpd test harness get lost | ||
---|---|---|---|
Product: | frysk | Reporter: | Rick Moseley <rmoseley> |
Component: | general | Assignee: | Rick Moseley <rmoseley> |
Status: | ASSIGNED --- | ||
Severity: | normal | ||
Priority: | P2 | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Host: | Target: | ||
Build: | Last reconfirmed: | ||
Bug Depends on: | |||
Bug Blocks: | 2246, 5495 |
Description
Rick Moseley
2007-12-12 17:50:14 UTC
Added new test and set it to unresolved: frysk-core/frysk/hpd/TestHpdTestHarness.java. After improving EofException and TimeoutException I'm seeing: ./TestRunner -u frysk.hpd.TestHpdTestHarness Running testKillHpdTestHarness(frysk.hpd.TestHpdTestHarness) ...ERROR (UNRESOLVED) http://sourceware.org/bugzilla/show_bug.cgi?id=5480 frysk.expunit.TimeoutException: timeout of 5expired; expecting: <<Attached to process*>>; buffer <<: /home/scratch/frysk/git/native/frysk-core/frysk/pkglibdir/funit-threads-looper (fhpd) run java.lang.RuntimeException: not added at frysk.proc.live.LinuxProcState$3.handleDeleteObservation(fhpd) at frysk.proc.Proc$16.execute(fhpd) at frysk.event.EventLoop.runEventLoop(fhpd) at frysk.event.EventLoop.run(fhpd) Exception in thread "Thread-1" frysk.sys.Errno$Esrch: ptrace: No such process (op 0x11 (PTRACE_DETACH), pid 19102, addr 0x0, data 0x0) at frysk.proc.live.LinuxTask.sendDetach(fhpd) at frysk.proc.live.LinuxTaskState$BlockedSignal.handleDetach(fhpd) at frysk.proc.Task.performDetach(fhpd) at frysk.proc.live.LinuxProcState$Detaching.<init>(fhpd) at frysk.proc.live.LinuxProcState$3.handleDetach(fhpd) at frysk.proc.Proc$8.execute(fhpd) at frysk.event.EventLoop.runEventLoop(fhpd) at frysk.event.EventLoop.run(fhpd) >> Two things to notice: -> Expecting <<Attached to process*>> The pattern should read <<... process.*>> -> there was a crash - the backtrace in <<...>> is from fhpd I modified TestHpdTestHarness changing the e.send's the
e.sendCommandExpectPrompt. This did improve things somewhat. I see
approximately a 80-90% improvement in that the test passes about 80-90% of the
time. Now seeing this:
Running testKillHpdTestHarness(frysk.hpd.TestHpdTestHarness) ...FAIL
junit.framework.AssertionFailedError: sent: <run> expecting: <Attached to
process.*starting/running.*> got: <TIMEOUT>
Time: 5.376
There was 1 failure:
1)
testKillHpdTestHarness(frysk.hpd.TestHpdTestHarness)junit.framework.AssertionFailedError:
sent: <run> expecting: <Attached to process.*starting/running.*> got: <TIMEOUT>
at frysk.hpd.HpdTestbed.expectPrompt(HpdTestbed.java:106)
at frysk.hpd.HpdTestbed.sendCommandExpectPrompt(HpdTestbed.java:141)
at
frysk.hpd.TestHpdTestHarness.testKillHpdTestHarness(TestHpdTestHarness.java:67)
at frysk.junit.Runner.runCases(Runner.java:203)
at frysk.junit.Runner.runTestCases(Runner.java:457)
at TestRunner.main(TestRunner.java:63)
I also see these stacktraces pretty regularly:
Running testKillHpdTestHarness(frysk.hpd.TestHpdTestHarness) ...ERROR
frysk.expunit.TimeoutException: timeout of 5expired; expecting:
<<Quitting\.\.\.>>; buffer <<Exception in thread "Thread-1" quit
frysk.sys.Errno$Esrch: ptrace: No such process (op 0x3 (PTRACE_PEEKUSR), pid
28352, addr 0x380, data 0x0)
at frysk.sys.Ptrace$AddressSpace.transfer(Ptrace.cxx:308)
at frysk.sys.Ptrace$AddressSpace.peek(Ptrace.java:200)
at
frysk.proc.live.AddressSpaceByteBuffer$PeeksRequest.peek(AddressSpaceByteBuffer.java:167)
at
frysk.proc.live.AddressSpaceByteBuffer$PeeksRequest.request(AddressSpaceByteBuffer.java:179)
at frysk.proc.live.AddressSpaceByteBuffer.peek(AddressSpaceByteBuffer.java:193)
at inua.eio.ByteBuffer.peekFully(ByteBuffer.java:101)
at inua.eio.ByteBuffer.peekLittle(ByteBuffer.java:173)
at inua.eio.ByteOrdered$2.peekULong(ByteOrdered.java:128)
at inua.eio.ByteBuffer.getULong(ByteBuffer.java:549)
at frysk.isa.banks.BankRegister.get(BankRegister.java:116)
at frysk.isa.banks.BankArrayRegister.get(BankArrayRegister.java:75)
at frysk.isa.banks.RegisterBanks.get(RegisterBanks.java:78)
at frysk.proc.Task.getRegister(Task.java:306)
at frysk.proc.live.LinuxX8664.isTaskStepped(LinuxX8664.java:111)
at
frysk.proc.live.LinuxPtraceTaskState$Stepping.handleTrappedEvent(LinuxPtraceTaskState.java:1070)
at
frysk.proc.live.LinuxPtraceTaskState$Stepping.handleStoppedEvent(LinuxPtraceTaskState.java:1172)
at frysk.proc.live.LinuxPtraceTask.processStoppedEvent(LinuxPtraceTask.java:193)
at frysk.proc.live.LinuxWaitBuilder.stopped(LinuxWaitBuilder.java:210)
at frysk.sys.Wait.wait(Wait.cxx:588)
at frysk.sys.Wait.waitAll(Wait.java:124)
at frysk.event.WaitEventLoop.block(WaitEventLoop.java:88)
at frysk.event.EventLoop.runEventLoop(EventLoop.java:379)
at frysk.event.EventLoop.run(EventLoop.java:489)
>>
*** Bug 260998 has been marked as a duplicate of this bug. *** Seen from the domain http://volichat.com Page where seen: http://volichat.com/adult-chat-rooms Marked for reference. Resolved as fixed @bugzilla. |