This is the mail archive of the frysk-bugzilla@sourceware.org mailing list for the frysk project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug general/3639] fc6: testTerminateKillKILL(frysk.proc.TestTaskTerminateObserver)


------- Additional Comments From cmoller at redhat dot com  2007-03-27 17:07 -------
Here's what's happening:

1. Wait.cxx:processStatus() decodes the waitpid status and if (WIFSTOPPED
(status) && (PTRACE_EVENT_EXIT ==  WSTOPEVENT (status))) it calls exitEvent()

2. LinuxPtraceHost.PollWaitOnSigChld.exitEvent() calls processTerminatingEvent()

3. Task.processTerminatingEvent() calls .handleTerminatingEvent()

4. LinuxPtraceTaskState.handleTerminatingEvent() calls notifyTerminating()

5. Task.notifyTerminating() calls updateTerminating()

6. TestTaskTerminateObserver. updateTerminating sets the int terminating value.

If, in Wait.cxx:processStatus(), status == 9,  (KILL), WIFSIGNALED (status) is
true rather than WIFSTOPPED (status), so none of the foregoing happens, causing
the test to fail.  What I don't know is if the process described above is in
fact what the programmer who wrote it intended and the test exercises conditions
that weren't meant to be exercised, or if the process described is flawed or
incomplete.

-- 


http://sourceware.org/bugzilla/show_bug.cgi?id=3639

------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]