From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4573 invoked by alias); 31 Oct 2005 10:03:16 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 4561 invoked by uid 22791); 31 Oct 2005 10:03:13 -0000 Received: from host62-24-231-115.dsl.vispa.com (HELO orac.walrond.org) (62.24.231.115) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Mon, 31 Oct 2005 10:03:13 +0000 Received: from localhost ([127.0.0.1]) by orac.walrond.org with esmtp (Exim 4.51) id 1EWWVS-0005LL-SC for gdb@sources.redhat.com; Mon, 31 Oct 2005 10:03:10 +0000 From: Andrew Walrond To: gdb@sources.redhat.com Subject: Re: gdb drops out with 'I/O possible message' Date: Mon, 31 Oct 2005 10:03:00 -0000 User-Agent: KMail/1.8.2 References: <200510282330.00638.andrew@walrond.org> <200510310653.49726.andrew@walrond.org> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200510311003.10718.andrew@walrond.org> X-SW-Source: 2005-10/txt/msg00229.txt.bz2 On Monday 31 October 2005 09:43, Andreas Schwab wrote: > > Some process (ruby?) is probably enabling async I/O on stdin, which causes > all processes in the same process group to receive SIGIO whenever > something is available to be read on stdin. Then the process crashes and > has no chance to disable async I/O. With the next debugging session a new > process group is created, but the SIGIO signals are still sent to the old > (now defunct) process group, effectively dropping them on the floor. So is gdb in the same process group as the debug target process? (FWIW the process in question forks off several other processes) And will receive the same SIGIOs? It just looks like gdb is catching a SIGIO and exiting... In other (non ruby) applications where I have seen this problem, I do std::ios::sync_with_stdio(false) which presumably enables async I/O on stdin/stdout etc. Hmmm Anyhow; I'll try the gdb inside gdb thing next time I can prodice this behaviour with any regularity. Thanks Andrew Walrond