aboutsummaryrefslogtreecommitdiff
path: root/linux-user/main.c
diff options
context:
space:
mode:
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-12-18 22:44:04 +0000
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-12-18 22:44:04 +0000
commit2b1319c85c94b7defef2ac2191bb50d773c81db4 (patch)
tree14e178eb62fc1cdd9a41f29e4c85509c5e0b6da9 /linux-user/main.c
parent6f9c5ee782e983f00e81a7cbd98900bdac9b3e6c (diff)
downloadqemu-2b1319c85c94b7defef2ac2191bb50d773c81db4.zip
qemu-2b1319c85c94b7defef2ac2191bb50d773c81db4.tar.gz
qemu-2b1319c85c94b7defef2ac2191bb50d773c81db4.tar.bz2
User-mode GDB stub improvements - handle fork
Close gdbserver in child processes, so that only one stub tries to talk to GDB at a time. Updated from an earlier patch by Paul Brook. Signed-off-by: Daniel Jacobowitz <dan@codesourcery.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6095 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'linux-user/main.c')
-rw-r--r--linux-user/main.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/linux-user/main.c b/linux-user/main.c
index 52322d4..238165f 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -162,6 +162,7 @@ void fork_end(int child)
pthread_cond_init(&exclusive_cond, NULL);
pthread_cond_init(&exclusive_resume, NULL);
pthread_mutex_init(&tb_lock, NULL);
+ gdbserver_fork(thread_env);
} else {
pthread_mutex_unlock(&exclusive_lock);
pthread_mutex_unlock(&tb_lock);
@@ -254,6 +255,9 @@ void fork_start(void)
void fork_end(int child)
{
+ if (child) {
+ gdbserver_fork(thread_env);
+ }
}
#endif