From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1431 invoked by alias); 4 Feb 2010 23:30:38 -0000 Received: (qmail 1418 invoked by uid 22791); 4 Feb 2010 23:30:36 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 04 Feb 2010 23:30:31 +0000 Received: from int-mx04.intmail.prod.int.phx2.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.17]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id o14NUTLF023556 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 4 Feb 2010 18:30:29 -0500 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx04.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id o14NUS46025388; Thu, 4 Feb 2010 18:30:29 -0500 Received: from opsy.redhat.com (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id o14NURXP003918; Thu, 4 Feb 2010 18:30:27 -0500 Received: by opsy.redhat.com (Postfix, from userid 500) id 3C180379961; Thu, 4 Feb 2010 16:30:27 -0700 (MST) From: Tom Tromey To: scott.harrison@tandberg.com Cc: gdb-patches@sourceware.org Subject: Re: New feature: allow thread command to take a LWPID. References: <20100204113543.GB2704@tandberg.com> Reply-To: tromey@redhat.com Date: Thu, 04 Feb 2010 23:30:00 -0000 In-Reply-To: <20100204113543.GB2704@tandberg.com> (scott harrison's message of "Thu, 4 Feb 2010 11:35:43 +0000") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (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: 2010-02/txt/msg00149.txt.bz2 >>>>> "scott" == scott harrison writes: Scott> Before invoking GDB we know the LWPID and the PID so we attach to Scott> the PID (--pid), however, currently GDB only knows about its own Scott> threadids, we don't know this before invoking GDB but our script Scott> is already written, so I have created a small patch to the Scott> "thread" command to take a % option, and swtich to that Scott> thread. This seems like a reasonable idea. I am not super fond of the syntax. I don't have a better suggestion though :-( Scott> Patch is attached. I realise that this patch may not be applicable to Scott> all platforms that gdb is used on, sorry. Do you have a copyright assignment in place? We'll need one before we can incorporate this. If you don't, send me email off-list and I will get you started. Mini review: Scott> +struct thread_info * Scott> +find_thread_lwp (int num) New functions should have a header comment describing their purpose, arguments, and return. And, this one should be static. Scott> + if (tp->ptid.lwp == num) Scott> + return tp; lwp is an long but the `num' argument is an int. That seems wrong. Scott> + char *tidstring=(char *)tidstr; In the GNU style, there are spaces around operators. In this case you also don't need the cast. So it would look like: char *tidstring = tidstr; Scott> + if (tidstring[0] == '%') Scott> + { Brace indented two more spaces, then the body two beyond that. Scott> + num = value_as_long (parse_and_eval ((void *)(tidstring+1))); Spaces. You should probably introduce a new local of 'long' type here. You don't need the cast to void*, because parse_and_eval actually takes a char* argument. thanks, Tom