From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17004 invoked by alias); 30 Aug 2006 04:01:24 -0000 Received: (qmail 16982 invoked by uid 22791); 30 Aug 2006 04:01:21 -0000 X-Spam-Check-By: sourceware.org Received: from nevyn.them.org (HELO nevyn.them.org) (66.93.172.17) by sourceware.org (qpsmtpd/0.31.1) with ESMTP; Wed, 30 Aug 2006 04:01:17 +0000 Received: from drow by nevyn.them.org with local (Exim 4.54) id 1GIHGL-0002Bz-Cq; Wed, 30 Aug 2006 00:01:13 -0400 Date: Wed, 30 Aug 2006 04:01:00 -0000 From: Daniel Jacobowitz To: Nick Roberts Cc: gdb@sources.redhat.com Subject: Re: Merge of nickrob-async-20060513 to mainline? Message-ID: <20060830040113.GA8257@nevyn.them.org> Mail-Followup-To: Nick Roberts , gdb@sources.redhat.com References: <17652.63229.637451.185345@kahikatea.snap.net.nz> <20060830023335.GA6377@nevyn.them.org> <17653.930.196634.143646@kahikatea.snap.net.nz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <17653.930.196634.143646@kahikatea.snap.net.nz> User-Agent: Mutt/1.5.11+cvs20060403 X-IsSubscribed: yes 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 X-SW-Source: 2006-08/txt/msg00233.txt.bz2 On Wed, Aug 30, 2006 at 03:18:58PM +1200, Nick Roberts wrote: > If people are willing to review it then that is clearly preferable. If > not, then after passing the testuite, putting it in the repository would > seem to be a good way to test it. If it caused too much disruption then > it could be reverted fairy easily and there is plenty of time before the > next release. I'll wait to see what other developers have to say, but I think we should at least make an effort to review it. > > How big are the changes relative to mainline (diffstat)? > > A few extra files and a sprinkling of extra lines/if clauses (to test > if asynchronous) in twenty or so files. I could run diffstat but I'm > not familiar with it. Just generate the diff between your mergepoint and branch, and then pipe it to diffstat, assuming you've got it installed. > Well, it should be invisible for anything but i386-linux-gnu and work as before > on i386-linux-gnu unless "--async" is specified. To that extent it shouldn't > interfere with anyone not interested in using it. However, I may used the > wrong files to try to achieve this. There is also a file called README.async > in the branch. Well, I meant from an internals perspective - like, a patch just summarizing the interface changes, if the whole patch is too big to post at once. > Also it still uses pthreads. You said previously that it should be done > in one process and, following a remark from Jim Ingham, that ptrace is > non-blocking. AFAICS the problem is that wait *is* blocking and I can't > see of a way to deal with that without using another thread. Ah, but wait is non-blocking. You have to (A) use WNOHANG, and (B) be careful to handle asynchronous SIGCHLD events. It's not especially difficult, I don't think, but the async event loop in gdb has always confused me; we'll have to figure out how to gather up sigchld/wait events. -- Daniel Jacobowitz CodeSourcery