This is the mail archive of the
frysk@sourceware.org
mailing list for the frysk project.
Re: [SCM] master: Always handle terminated events.
- From: Mark Wielaard <mark at klomp dot org>
- To: frysk at sourceware dot org
- Cc: Andrew Cagney <cagney at sourceware dot org>
- Date: Tue, 18 Mar 2008 13:17:09 +0100
- Subject: Re: [SCM] master: Always handle terminated events.
- References: <20080318024714.22518.qmail@sourceware.org>
Hi Andrew,
On Tue, 2008-03-18 at 02:47 +0000, cagney@sourceware.org wrote:
> commit dce689bb1f007f71609d223f8640332591297c8d
> Author: Andrew Cagney <cagney@redhat.com>
> Date: Mon Mar 17 22:45:05 2008 -0400
>
> Always handle terminated events.
>
> frysk-core/frysk/proc/ChangeLog
> 2008-03-17 Andrew Cagney <cagney@redhat.com>
>
> * TestTaskObserver.java (attachDieingTask(int,boolean)): Do not
> check attached count.
>
> frysk-core/frysk/proc/live/ChangeLog
> 2008-03-17 Andrew Cagney <cagney@redhat.com>
>
> * LinuxPtraceTaskState.java (getDestroyed): Delete.
> (handleDisappearedEvent(LinuxPtraceTask)): Delete.
> (handleTerminatedEvent(LinuxPtraceTask,Signal,int)): Make
> abstract; implement in all sub-classes.
> * LinuxPtraceTask.java (processClonedEvent(LinuxPtraceTask)):
> Catch Errno.Esrch.
>
> frysk-sys/frysk/rsl/ChangeLog
> 2008-03-17 Andrew Cagney <cagney@redhat.com>
>
> * Log.java (log(String,Object,String,Object,String,int)): New.
This is an interesting hack to get around some of the nasty terminated
process corner cases. But a couple of questions.
Why don't you push the event on the queue? Currently you need to disable
some double state transition sanity checks because you are directly
calling handle event methods directly.
And what if one of the event handlers already processes an Errno itself
so you won't see it?
Cheers,
Mark