[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
hurd/proc ChangeLog mgt.c
From: |
Marcus Brinkmann |
Subject: |
hurd/proc ChangeLog mgt.c |
Date: |
Sat, 09 Aug 2003 12:43:34 -0400 |
CVSROOT: /cvsroot/hurd
Module name: hurd
Branch:
Changes by: Marcus Brinkmann <address@hidden> 03/08/09 12:43:34
Modified files:
proc : ChangeLog mgt.c
Log message:
2003-06-16 Ognyan Kulev <address@hidden>
* mgt.c (S_proc_dostop): Instead of suspending all threads except
CONTTHREAD, first suspend all threads, and then resume CONTTHREAD.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/hurd/hurd/proc/ChangeLog.diff?tr1=1.57&tr2=1.58&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/hurd/hurd/proc/mgt.c.diff?tr1=1.65&tr2=1.66&r1=text&r2=text
Patches:
Index: hurd/proc/ChangeLog
diff -u hurd/proc/ChangeLog:1.57 hurd/proc/ChangeLog:1.58
--- hurd/proc/ChangeLog:1.57 Wed Jun 5 19:29:47 2002
+++ hurd/proc/ChangeLog Sat Aug 9 12:43:34 2003
@@ -1,3 +1,8 @@
+2003-06-16 Ognyan Kulev <address@hidden>
+
+ * mgt.c (S_proc_dostop): Instead of suspending all threads except
+ CONTTHREAD, first suspend all threads, and then resume CONTTHREAD.
+
2002-06-05 Roland McGrath <address@hidden>
* info.c (S_proc_getprocinfo): If PI_FETCH_TASKEVENTS is set in *FLAGS,
Index: hurd/proc/mgt.c
diff -u hurd/proc/mgt.c:1.65 hurd/proc/mgt.c:1.66
--- hurd/proc/mgt.c:1.65 Wed May 8 05:24:52 2002
+++ hurd/proc/mgt.c Sat Aug 9 12:43:34 2003
@@ -1,5 +1,5 @@
/* Process management
- Copyright (C) 1992,93,94,95,96,99,2000,01,02 Free Software Foundation, Inc.
+ Copyright (C) 1992,93,94,95,96,99,2000,01,02,03 Free Software Foundation,
Inc.
This file is part of the GNU Hurd.
@@ -348,14 +348,17 @@
task_resume (p->p_task);
return err;
}
+ /* We can not compare the thread ports with CONTTHREAD, as CONTTHREAD
+ might be a proxy port (for example in rpctrace). For this reason
+ we suspend all threads and then resume CONTTHREAD. */
for (i = 0; i < nthreads; i++)
{
- if (threads[i] != contthread)
- thread_suspend (threads[i]);
+ thread_suspend (threads[i]);
mach_port_deallocate (mach_task_self (), threads[i]);
}
if (threads != threadbuf)
munmap (threads, nthreads * sizeof (thread_t));
+ thread_resume (contthread);
err = task_resume (p->p_task);
if (err)
return err;
- hurd/proc ChangeLog mgt.c,
Marcus Brinkmann <=