This is the mail archive of the frysk@sources.redhat.com 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]

Re: Make TestBreakpoints deterministic


Mark Wielaard wrote:


and, unless I'm mistaken, that can only work if the event loop is still running in its own thread (you seem to think otherwise?)

No, at that time the eventloop is running. Otherwise it wouldn't work as you said.

Now I am confused, you previously wrote:

The eventloop isn't running during teardown.

To re-iterate the relevant point from that part of the thread, tearDown must never rely on a running eventLoop - that may be part of what crashed. Therefore the above is wrong.
public void terminated (int pid, boolean signal,
int value, boolean coreDumped)
{
children.remove(new Integer(pid));
}
public void disappeared (int pid, Throwable w)
{
detach (pid);
children.remove(new Integer(pid));
}


notice how it is removing each child when it sees an exit event, yet here the child is going to generate two exit events.

Right, but that is what we expect isn't it? Since we expect this process
to give us 2 terminated events, one through ptrace/wait and one because
it is a child.
Actually, previously we expected nothing. Most (all but one?) tests were running as demons - so the second event did not occur. Your code changes those rules, should the code be adjusted (we certainly shouldn't be adding code reliant on the event loop)?

Andrew


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