diff options
author | Michael Snyder <msnyder@vmware.com> | 2006-01-04 19:34:58 +0000 |
---|---|---|
committer | Michael Snyder <msnyder@vmware.com> | 2006-01-04 19:34:58 +0000 |
commit | ac264b3b9cf16064cea9011faf07ec61babb0ef8 (patch) | |
tree | 02269be136dcba8affaec7ce4be33ba4c35ff827 /gdb/linux-fork.h | |
parent | 5c95884b4cb77d6a902ade2f566eb71f9a322dd0 (diff) | |
download | gdb-ac264b3b9cf16064cea9011faf07ec61babb0ef8.zip gdb-ac264b3b9cf16064cea9011faf07ec61babb0ef8.tar.gz gdb-ac264b3b9cf16064cea9011faf07ec61babb0ef8.tar.bz2 |
2006-01-04 Michael Snyder <msnyder@redhat.com>
Checkpoint/Restart for Linux.
* linux-nat.c: Add support for debugging multiple forks.
Add #include for linux-fork.h (interface spec).
(super_mourn_inferior): New function pointer.
(child_mourn_inferior): New function / target method.
(linux_target): Claim to_mourn_inferior method pointer.
(child_follow_fork): Call interface to linux-fork, conditionally
add new fork processes to list of debugged processes.
(kill_inferior): Use interface to linux-fork to kill
multiple processes.
* linux-fork.h: New file.
* linux-fork.c: New file. Support for debugging multiple forks
of the same program. Support for checkpoint and restart commands.
* infrun.c (nullify_last_target_wait_ptid): New function.
* Makefile.in: Add linux-fork.
* config/*/linux.mh: Add linux-fork.
* NEWS: Mention new functionality.
Diffstat (limited to 'gdb/linux-fork.h')
-rw-r--r-- | gdb/linux-fork.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gdb/linux-fork.h b/gdb/linux-fork.h new file mode 100644 index 0000000..9b15403 --- /dev/null +++ b/gdb/linux-fork.h @@ -0,0 +1,33 @@ +/* GNU/Linux native-dependent code for debugging multiple forks. + + Copyright 2005 Free Software Foundation, Inc. + + This file is part of GDB. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +struct fork_info; +extern struct fork_info *add_fork (pid_t); +extern struct fork_info *find_fork_pid (pid_t); +extern void fork_save_infrun_state (struct fork_info *, int); +extern void linux_fork_killall (void); +extern void linux_fork_mourn_inferior (void); +extern int forks_exist_p (void); + +struct fork_info *fork_list; + +extern int detach_fork; + |