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

Re: [SCM] master: Always handle terminated events.


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


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