Re: Plans for fork/exec debugging



Hello,

Here is an update on the fork/exec support in Nemiver.

Dodji Seketeli <dodji seketeli org> a écrit:

> Basically when a program does some forking, it would be nice to be able
> to e.g. be notified when the fork or exec happens, be able to choose the
> either follow the child or the parent process, that kind of things.

[...]

> So here is what I think we need to support.

[...]

> A. Add a setting to let the user specify if she want to either follow
> the parent or the child process when a fork occurs.

This was already done when I did the original post.

> B. Break on fork, vfork and exec system calls.
>
>   Doing this involves adding new entry points to the IDebugger
>   interface to break on these events, and extending the breakpoint
>   setting dialog to let the user break on these too.
>
>   Ice on the cake, support breaking on all system calls. Not really needed for
>   this feature, but since we are at it, we'd do it as well.

This is new done in the follow-fork-mode branch[1].

> C. Support GDB/MI asynchronous thread related notifications
>
> GDB/MI sends asynchronous notifications about thread and thread groups
> creation, destruction and selection. We need to parse those
> notifications and let IDebugger emit signals for those. I'd like to
> provide a new widget in the UI that would log these thread life cycle
> related events to let the user know about which thread(-group) is
> running the code she is seeing.

This is not yet done, but I figured it was not necessary to be able to
basically debug a forked process. This remain something that would be
nice to have, though, and will definitely be useful to support
multi-process debugging in general. So I have opened an enhancement
request to track this task:
https://bugzilla.gnome.org/show_bug.cgi?id=624629

Debugging the follow-fork-mode branch made me fix various things in the
asm-support branch[2] too, making it more robust now.

Later today I will proceed with the merging of asm-support and
follow-fork-mode into master because I feel those branches are usable
enough to ask for more testing.

[1] http://git.gnome.org/browse/nemiver/?h=follow-fork-mode
[2] http://git.gnome.org/browse/nemiver/log/?h=asm-support

Cheers.

-- 
	Dodji


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]