From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30253 invoked by alias); 31 Oct 2005 09:43:25 -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 30228 invoked by uid 22791); 31 Oct 2005 09:43:20 -0000 Received: from mx2.suse.de (HELO mx2.suse.de) (195.135.220.15) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Mon, 31 Oct 2005 09:43:20 +0000 Received: from Relay1.suse.de (mail2.suse.de [195.135.221.8]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx2.suse.de (Postfix) with ESMTP id 385361C591; Mon, 31 Oct 2005 10:43:17 +0100 (CET) From: Andreas Schwab To: Andrew Walrond Cc: gdb@sources.redhat.com Subject: Re: gdb drops out with 'I/O possible message' References: <200510282330.00638.andrew@walrond.org> <20051028231509.GB9909@nevyn.them.org> <200510310653.49726.andrew@walrond.org> X-Yow: I think I'll do BOTH if I can get RESIDUALS!! Date: Mon, 31 Oct 2005 09:43:00 -0000 In-Reply-To: <200510310653.49726.andrew@walrond.org> (Andrew Walrond's message of "Mon, 31 Oct 2005 06:53:49 +0000") Message-ID: User-Agent: Gnus/5.110003 (No Gnus v0.3) Emacs/22.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-SW-Source: 2005-10/txt/msg00228.txt.bz2 Andrew Walrond writes: > On Saturday 29 October 2005 00:15, Daniel Jacobowitz wrote: >> On Fri, Oct 28, 2005 at 11:30:00PM +0100, Andrew Walrond wrote: >> > What might cause gdb to do this? >> >> I have no idea. That message comes from ruby rather than GDB. > > No, it doesn't... Just because gdb contains the string doesn't mean that it has printed it. > $ grep -rF 'I/O possible' gdb-6.3 Glibc also contains this string: libc/sysdeps/generic/siglist.h: init_sig (SIGIO, "IO", N_("I/O possible")) libc/sysdeps/generic/signame.c: init_sig (SIGIO, "IO", "I/O possible"); libc/sysdeps/generic/signame.c: init_sig (SIGPOLL, "POLL", "I/O possible"); libc/sysdeps/unix/siglist.c: N_("I/O possible"), > I have seen gdb drop out with this message when debugging c, c++ as well as > ruby projects, but not frequently. In this particular example, I immediately > re-ran gdb with the same commands and it worked exactly as expected. 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. > I don't see 'I/O possible' often, but when I do gdb always seems to just exit. Try running gdb inside gdb to find out exactly why gdb is exiting. Andreas. -- Andreas Schwab, SuSE Labs, schwab@suse.de SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."