From 813de3b38e97b1ccfbec0748b1851e455b5df37a Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sun, 28 Feb 1999 09:46:20 +0000 Subject: 1999-02-28 Roland McGrath * hurd/hurd-raise.c (_hurd_raise_signal): Send "poll request" msg_sig_post RPC (with SIGNO=0), rather than generating signal (again) with the RPC. --- hurd/hurd-raise.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'hurd') diff --git a/hurd/hurd-raise.c b/hurd/hurd-raise.c index a31638a1b2..c92c03c6de 100644 --- a/hurd/hurd-raise.c +++ b/hurd/hurd-raise.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +/* Copyright (C) 1994,95,96,97,99 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -41,7 +41,11 @@ _hurd_raise_signal (struct hurd_sigstate *ss, __spin_unlock (&ss->lock); - /* Send a message to the signal thread so it - will wake up and check for pending signals. */ - __msg_sig_post (_hurd_msgport, signo, detail->code, __mach_task_self ()); + /* Send a message to the signal thread so it will wake up and check for + pending signals. This is a generic "poll request" message (SIGNO==0) + rather than delivering this signal and its detail, because we have + already marked the signal as pending for the particular thread we + want. Generating the signal with an RPC might deliver it to some + other thread. */ + __msg_sig_post (_hurd_msgport, 0, 0, __mach_task_self ()); } -- cgit v1.2.3