diff options
author | Michael I. Bushnell <mib@gnu.org> | 1994-03-22 22:12:00 +0000 |
---|---|---|
committer | Michael I. Bushnell <mib@gnu.org> | 1994-03-22 22:12:00 +0000 |
commit | 6bf59c0d9ac96d12228463529e231e2af1bb24ff (patch) | |
tree | 7ed5f52a49506b6f5b5e92ba75c88451ba38c8e9 | |
parent | fa1781d25c85cdc790689bc2a0518c866deb7544 (diff) |
Formerly wait.c.~2~
-rw-r--r-- | proc/wait.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/proc/wait.c b/proc/wait.c index a801c99b..eeeccdaa 100644 --- a/proc/wait.c +++ b/proc/wait.c @@ -203,6 +203,9 @@ S_proc_wait (struct proc *p, if (options & WNOHANG) return EWOULDBLOCK; + + if (p->p_waiting) + return EBUSY; p->p_waiting = 1; w = &p->p_continuation.wait_c; @@ -278,8 +281,8 @@ S_proc_mark_traced (struct proc *p) /* Implement proc_mark_nostopchild as described in <hurd/proc.defs>. */ error_t -S_proc_mark_nostopchild (struct proc *p, - int value) +S_proc_mod_stopchild (struct proc *p, + int value) { p->p_nostopcld = !! value; return 0; @@ -298,7 +301,7 @@ zombie_check_pid (pid_t pid) /* Implement interrupt_operation as described in <hurd/interrupt.defs>. */ error_t -interrupt_operation (mach_port_t object) +S_interrupt_operation (mach_port_t object) { struct proc *p = reqport_find (object); @@ -307,7 +310,7 @@ interrupt_operation (mach_port_t object) if (p->p_waiting) abort_wait (p); - else if (p->p_msgportwait) + if (p->p_msgportwait) abort_getmsgport (p); return 0; |