=================== BUG #3939: LATEST MODIFICATIONS ==================
http://savannah.gnu.org/bugs/?func=detailbug&bug_id=3939&group_id=30
Changes by: Marcus Brinkmann <[EMAIL PROTECTED]>
Date: Sat 08/09/2003 at 18:51 (Europe/Berlin)
What | Removed | Added
---------------------------------------------------------------------------
Category | None | Hurd Interfaces
Resolution | None | Fixed
Assigned to | None | marcus
Status | Open | Closed
Reproducibility | None | Every Time
Size (loc) | None | Low <30
Effort | 0.00 | 0.50
------------------ Additional Follow-up Comments ----------------------------
Thanks for the report. This has been fixed by Patch #1633, which is now in CVS.
=================== BUG #3939: FULL BUG SNAPSHOT ===================
Submitted by: ogi Project: The GNU Hurd
Submitted on: Tue 06/10/2003 at 16:24
Category: Hurd Interfaces Severity: 5 - Major
Priority: None Bug Group: None
Resolution: Fixed Assigned to: marcus
Originator Name: Originator Email:
Status: Closed Reproducibility: Every Time
Size (loc): Low <30 Effort: 0.50
Summary: rpctrace:d program hangs when signal that terminates or suspends it is sent
Original Submission: All RPC communication of a rpctrace:d programs is catched by
rpctrace. When signal that terminates or suspends the traced task is sent, the
special thread of the traced task that handles signals calls RPC proc_dostop_request
to the proc server. This call, by design, suspends all threads of the traced task
except the one that handles the signal. Unfortunately, actually all the threads are
suspended, thus making the whole process to hang. Moreover, when a key is pressed the
whole terminal hangs. This is probably because the traced task is no longer able to
handle any input.
So, why proc_dostop_request can't recognize the signal thread of the traced task?
Because proc_dostop_request receives 2 arguments: task_t process and thread_t
contthread. The function gets all process threads and compare them to contthread.
But contthread is changed by rpctrace! That's why all threads are suspended.
The easiest solution is to add special case to rpctrace processing. Though it is
questionable whether this is the right thing to do.
Follow-up Comments
*******************
-------------------------------------------------------
Date: Sat 08/09/2003 at 18:51 By: marcus
Thanks for the report. This has been fixed by Patch #1633, which is now in CVS.
CC list is empty
No files currently attached
For detailed info, follow this link:
http://savannah.gnu.org/bugs/?func=detailbug&bug_id=3939&group_id=30
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
_______________________________________________
Bug-hurd mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/bug-hurd