From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4794 invoked by alias); 31 May 2009 18:31:35 -0000 Received: (qmail 4786 invoked by uid 22791); 31 May 2009 18:31:35 -0000 X-SWARE-Spam-Status: No, hits=-1.7 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_37,J_CHICKENPOX_39,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mx2.redhat.com (HELO mx2.redhat.com) (66.187.237.31) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 31 May 2009 18:31:28 +0000 Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26]) by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n4VITN3d009705; Sun, 31 May 2009 14:29:23 -0400 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n4VITMpt014913; Sun, 31 May 2009 14:29:22 -0400 Received: from opsy.redhat.com (vpn-12-167.rdu.redhat.com [10.11.12.167]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n4VITL4e013458; Sun, 31 May 2009 14:29:21 -0400 Received: by opsy.redhat.com (Postfix, from userid 500) id 46B4A3785B9; Sun, 31 May 2009 12:29:20 -0600 (MDT) To: Doug Evans Cc: Pedro Alves , gdb-patches@sourceware.org Subject: Re: [RFC] Allowing all threads of all|current process(es) to be resumed [new command + docs] References: <200905301151.52892.pedro@codesourcery.com> From: Tom Tromey Reply-To: tromey@redhat.com Date: Sun, 31 May 2009 18:31:00 -0000 In-Reply-To: (Doug Evans's message of "Sun\, 31 May 2009 09\:33\:57 -0700") Message-ID: User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2009-05/txt/msg00666.txt.bz2 >>>>> "Doug" == Doug Evans writes: Doug> [And IWBN if there were a way to continue a subgroup of threads though Doug> I realize "c N" is already taken. "c [-a] [-t T1 T2 T3] [--] [N]"? I Doug> realize that's perhaps not ideal, but short of adding another command Doug> it's the first thing that came to me. :-) And no claim is made that Doug> this hasn't been discussed before ...] Yeah, I think this is the "itset" idea that Stan mentioned and that Pedro referred to (IIUC) as being totalview-like: http://sourceware.org/ml/gdb/2008-08/msg00169.html (The wiki should link to this note IMO... perhaps I will edit it in.) Doug> I wonder what the normal usage pattern will be of multiprocess debugging. Doug> An alternative to "set scheduler-multiple on|off" is to add another Doug> flag to the various commands. Doug> "scheduler-multiple" may be The Right Thing To Do, but adding more Doug> global state that controls command behaviour gives me pause Doug> ("exec-direction" anyone?). I agree. Global settings seem particularly user-unfriendly when debugging multiple inferiors. E.g., what if you want to reverse-debug one inferior but none of the others? I suppose you can make the settings per-inferior. But this also seems to have potential for a lot of user confusion. Doug> Another way to add scheduler-locking would have been to add Doug> options to "step", etc. "s -l" or some such ["l" for "locking" Doug> though "locking" out of place here, it's just an example Doug> anyway]. Yeah. Doug> # This isn't implementable today, it's just for illustration. Doug> define lstep [...] You can implement this with Python today :-) ... Doug> set $save_scheduler_locking [get scheduler-locking] Here you use gdb.parameter. Doug> try Python's try/catch works with gdb exceptions. Tom