gdb/259: Thread receives Interrupted System Call error while waiting on message queue.

Daniel Jacobowitz drow@mvista.com
Fri Dec 14 17:48:00 GMT 2001


The following reply was made to PR gdb/259; it has been noted by GNATS.

From: Daniel Jacobowitz <drow@mvista.com>
To: lkiss@deltaprime.com
Cc: gdb-gnats@sources.redhat.com
Subject: Re: gdb/259: Thread receives Interrupted System Call error while waiting on message queue.
Date: Fri, 14 Dec 2001 20:38:20 -0500

 On Fri, Dec 14, 2001 at 05:48:29PM -0000, lkiss@deltaprime.com wrote:
 > If a thread is waiting on a message queue and another thread
 > is created (say in the main thread) the msgrcv() function
 > returns with an error code of EINTR.
 > 
 > This appears to be the case only while the program is under
 > gdb's control.
 
 That's right.  When a new thread is created, all threads running under
 GDB will receive a signal.  This is a fairly legitimate thing to do. 
 In an ideal world, the application would never find out; but in all
 current versions of Linux, they do.  This may be fixed in the kernel
 sometime soon.
 
 -- 
 Daniel Jacobowitz                           Carnegie Mellon University
 MontaVista Software                         Debian GNU/Linux Developer



More information about the Gdb-prs mailing list