diff options
Diffstat (limited to 'libports/manage-multithread.c')
-rw-r--r-- | libports/manage-multithread.c | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/libports/manage-multithread.c b/libports/manage-multithread.c index 9843b9c0..2013de96 100644 --- a/libports/manage-multithread.c +++ b/libports/manage-multithread.c @@ -23,16 +23,6 @@ #include <assert.h> #include <cthreads.h> -/* Fill in a cancellation error for the incoming RPC in inp - so that it will be retried. For now, just return junk. XXX */ -static void -cancel_rpc (mach_msg_header_t *inp, - mach_msg_header_t *outp) -{ -} - - - void ports_manage_port_operations_multithread (struct port_bucket *bucket, ports_demuxer_type demuxer, @@ -78,16 +68,9 @@ ports_manage_port_operations_multithread (struct port_bucket *bucket, ports_begin_rpc (pi, &link); mutex_lock (&_ports_lock); if (inp->msgh_seqno < pi->cancel_threshhold) - { - cancel_rpc (inp, outp); - status = 1; - mutex_unlock (&_ports_lock); - } - else - { - mutex_unlock (&_ports_lock); - status = demuxer (inp, outp); - } + hurd_thread_cancel (link.thread); + mutex_unlock (&_ports_lock); + status = demuxer (inp, outp); ports_end_rpc (pi, &link); ports_port_deref (pi); } |