Bug 3484 - testMultiThreadedStoppedAttached(frysk.proc.TestProcStopped)junit.framework.AssertionFailedError: event loop run explictly stopped (assertSendAddCloneWaitForAcks (Sig_USR1,Sig_USR2))
Summary: testMultiThreadedStoppedAttached(frysk.proc.TestProcStopped)junit.framework.A...
Status: RESOLVED FIXED
Alias: None
Product: frysk
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: Andrew Cagney
URL:
Keywords:
: 3485 (view as bug list)
Depends on:
Blocks: 1582 2654
  Show dependency treegraph
 
Reported: 2006-11-08 18:12 UTC by Andrew Cagney
Modified: 2006-11-27 00:51 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments
Full log of the test case from when it (finally) fails. (2.31 KB, text/plain)
2006-11-26 22:41 UTC, Andrew Cagney
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Cagney 2006-11-08 18:12:31 UTC
FC 5 .18 kernel:

testMultiThreadedStoppedAttached(frysk.proc.TestProcStopped)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.TestLib$AckProcess.<init>(TestRunner)
   at frysk.proc.TestLib$AttachedAckProcess.<init>(TestRunner)
   at frysk.proc.TestProcStopped.testMultiThreadedStoppedAttached(TestRunner)
   at frysk.junit.Runner.runCases(TestRunner)
   at frysk.junit.Runner.runArchCases(TestRunner)
   at frysk.junit.Runner.runTestCases(TestRunner)
   at TestRunner.main(TestRunner)
Comment 1 Andrew Cagney 2006-11-26 21:26:29 UTC
This is a utrace bug, block on FC 6, not FC 5.
Comment 2 Andrew Cagney 2006-11-26 22:35:04 UTC
*** Bug 3485 has been marked as a duplicate of this bug. ***
Comment 3 Andrew Cagney 2006-11-26 22:38:57 UTC
Running just testMultiThreadedStoppedAttached in isolation leads to failure (but
does take a few repeated test runs).
Comment 4 Andrew Cagney 2006-11-26 22:41:06 UTC
Created attachment 1439 [details]
Full log of the test case from when it (finally) fails.
Comment 5 Andrew Cagney 2006-11-26 23:25:22 UTC
Looking at the log, it appears that the second cloned thread (14435) is never
continued after its initial stop, and that the initial stop comes early - before
the clone event.

26-Nov-06 5:32:23 PM frysk.sys.Wait waitAllNoHang
FINE: frysk.sys.Wait pid 14435 status 0x137f WIFSTOPPED 19 (Stopped (signal))

26-Nov-06 5:32:23 PM frysk.sys.Wait waitAllNoHang
FINE: frysk.sys.Wait pid 14433 status 0x3057f WIFSTOPPED/CLONE 5
(Trace/breakpoint trap)
Comment 6 Andrew Cagney 2006-11-27 00:51:33 UTC
waitpid stop event for new thread arriving before the corresponding clone.

Index: frysk-core/frysk/proc/ChangeLog
2006-11-26  Andrew Cagney  <cagney@redhat.com>

        * LinuxHost.java (PollWaitOnSigChild.waitObserver.cloneEvent):
        Call attemptDeliveringFsckedKernelEvents to force re-delivery of
        any stray waitpid events.
        (attemptDeliveringFsckedKernelEvents): Add more logging.