summaryrefslogtreecommitdiff
path: root/proc
diff options
context:
space:
mode:
authorThomas Bushnell <thomas@gnu.org>1999-03-09 18:14:58 +0000
committerThomas Bushnell <thomas@gnu.org>1999-03-09 18:14:58 +0000
commit120dee489f4eefe691133e221172e1ef67fe91a1 (patch)
tree961f78077bfec981005249560fd8041799e72cc5 /proc
parente62a16ff75853c03be2daafd1385fafcd63a470c (diff)
Tue Mar 9 13:11:43 1999 Thomas Bushnell, BSG <tb@mit.edu>
* mgt.c (S_proc_reassign): It's not necessary to re-request the task-death notification; we've moved both the task right and the proc port that gets the notification, so delete that. * mgt.c (S_proc_reassign): Use mach_port_destroy instead of mach_port_deallocate to release P->p_msgport, for the same reasons as the changes below.
Diffstat (limited to 'proc')
-rw-r--r--proc/ChangeLog10
-rw-r--r--proc/mgt.c10
2 files changed, 11 insertions, 9 deletions
diff --git a/proc/ChangeLog b/proc/ChangeLog
index 772abb05..94c9acbd 100644
--- a/proc/ChangeLog
+++ b/proc/ChangeLog
@@ -1,3 +1,13 @@
+Tue Mar 9 13:11:43 1999 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * mgt.c (S_proc_reassign): It's not necessary to re-request the
+ task-death notification; we've moved both the task right and the
+ proc port that gets the notification, so delete that.
+
+ * mgt.c (S_proc_reassign): Use mach_port_destroy instead of
+ mach_port_deallocate to release P->p_msgport, for the same reasons
+ as the changes below.
+
Sun Mar 7 18:19:07 1999 Thomas Bushnell, BSG <tb@mit.edu>
* mgt.c (process_has_exited): Use mach_port_destroy instead of
diff --git a/proc/mgt.c b/proc/mgt.c
index 4a8aa510..f97c3984 100644
--- a/proc/mgt.c
+++ b/proc/mgt.c
@@ -225,19 +225,11 @@ S_proc_reassign (struct proc *p,
/* For security, we need use the request port from STUBP */
ports_transfer_right (p, stubp);
- /* Redirect the task-death notification to the new receive right. */
- mach_port_request_notification (mach_task_self (), p->p_task,
- MACH_NOTIFY_DEAD_NAME, 1,
- p->p_pi.port_right,
- MACH_MSG_TYPE_MAKE_SEND_ONCE, &foo);
- if (foo)
- mach_port_deallocate (mach_task_self (), foo);
-
/* Enqueued messages might refer to the old task port, so
destroy them. */
if (p->p_msgport != MACH_PORT_NULL)
{
- mach_port_deallocate (mach_task_self (), p->p_msgport);
+ mach_port_destroy (mach_task_self (), p->p_msgport);
p->p_msgport = MACH_PORT_NULL;
p->p_deadmsg = 1;
}