Message ID | 1406888377-25795-12-git-send-email-gbenson@redhat.com |
---|---|
State | Superseded |
Headers |
Received: (qmail 17821 invoked by alias); 1 Aug 2014 10:41:07 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: <gdb-patches.sourceware.org> List-Unsubscribe: <mailto:gdb-patches-unsubscribe-##L=##H@sourceware.org> List-Subscribe: <mailto:gdb-patches-subscribe@sourceware.org> List-Archive: <http://sourceware.org/ml/gdb-patches/> List-Post: <mailto:gdb-patches@sourceware.org> List-Help: <mailto:gdb-patches-help@sourceware.org>, <http://sourceware.org/ml/#faqs> Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 17812 invoked by uid 89); 1 Aug 2014 10:41:07 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.4 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Fri, 01 Aug 2014 10:41:05 +0000 Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s71AJmH8002343 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 1 Aug 2014 06:19:48 -0400 Received: from blade.nx (ovpn-116-104.ams2.redhat.com [10.36.116.104]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id s71AJkhZ026194; Fri, 1 Aug 2014 06:19:47 -0400 Received: from blade.nx (localhost [127.0.0.1]) by blade.nx (Postfix) with ESMTP id 1B89B2640E0; Fri, 1 Aug 2014 11:19:45 +0100 (BST) From: Gary Benson <gbenson@redhat.com> To: gdb-patches@sourceware.org Cc: Doug Evans <dje@google.com>, Pedro Alves <palves@redhat.com>, Tom Tromey <tromey@redhat.com> Subject: [PATCH 11/11 v5] Remove one GDBSERVER use from linux-waitpid.c Date: Fri, 1 Aug 2014 11:19:37 +0100 Message-Id: <1406888377-25795-12-git-send-email-gbenson@redhat.com> In-Reply-To: <1406888377-25795-1-git-send-email-gbenson@redhat.com> References: <1406888377-25795-1-git-send-email-gbenson@redhat.com> X-IsSubscribed: yes |
Commit Message
Gary Benson
Aug. 1, 2014, 10:19 a.m. UTC
This commit makes nat/linux-waitpid.c include common-defs.h rather than defs.h or server.h. A use of GDBSERVER had to be left in to support some some thread_db debug code. This hack will be removed when the Linux thread_db code is unified and made shared. gdb/ 2014-08-01 Gary Benson <gbenson@redhat.com> * nat/linux-waitpid.c: Include common-defs.h. Don't include defs.h or server.h. (linux_debug) [GDBSERVER]: Declare debug_threads. --- gdb/ChangeLog | 6 ++++++ gdb/nat/linux-waitpid.c | 10 +++------- 2 files changed, 9 insertions(+), 7 deletions(-)
Comments
Gary Benson writes: > This commit makes nat/linux-waitpid.c include common-defs.h rather > than defs.h or server.h. A use of GDBSERVER had to be left in to > support some some thread_db debug code. This hack will be removed > when the Linux thread_db code is unified and made shared. > > gdb/ > 2014-08-01 Gary Benson <gbenson@redhat.com> > > * nat/linux-waitpid.c: Include common-defs.h. > Don't include defs.h or server.h. > (linux_debug) [GDBSERVER]: Declare debug_threads. > --- > gdb/ChangeLog | 6 ++++++ > gdb/nat/linux-waitpid.c | 10 +++------- > 2 files changed, 9 insertions(+), 7 deletions(-) > > diff --git a/gdb/nat/linux-waitpid.c b/gdb/nat/linux-waitpid.c > index 53847ac..d04a3af 100644 > --- a/gdb/nat/linux-waitpid.c > +++ b/gdb/nat/linux-waitpid.c > @@ -17,13 +17,7 @@ > You should have received a copy of the GNU General Public License > along with this program. If not, see <http://www.gnu.org/licenses/>. */ > > -#ifdef GDBSERVER > -#include "server.h" > -#else > -#include "defs.h" > -#include "signal.h" > -#endif > - > +#include "common-defs.h" > #include "linux-nat.h" > #include "linux-waitpid.h" > #include "gdb_wait.h" > @@ -35,6 +29,8 @@ static inline void > linux_debug (const char *format, ...) > { > #ifdef GDBSERVER > + extern int debug_threads; > + Recognizing that this is a temporary hack, ok by me. Can I ask you to add a FIXME here though? > if (debug_threads) > { > va_list args; > -- > 1.7.1 >
Doug Evans wrote: > Gary Benson writes: > > @@ -35,6 +29,8 @@ static inline void > > linux_debug (const char *format, ...) > > { > > #ifdef GDBSERVER > > + extern int debug_threads; > > + > > Recognizing that this is a temporary hack, ok by me. > Can I ask you to add a FIXME here though? I added: /* FIXME: This conditional code and hacky extern are necessary now, but should be removed when GDB's and gdbserver's Linux thread_db implementations are unified and moved into the nat directory. */ Thanks, Gary
On 08/07/2014 01:38 PM, Gary Benson wrote: > Doug Evans wrote: >> Gary Benson writes: >> > @@ -35,6 +29,8 @@ static inline void >> > linux_debug (const char *format, ...) >> > { >> > #ifdef GDBSERVER >> > + extern int debug_threads; >> > + >> >> Recognizing that this is a temporary hack, ok by me. >> Can I ask you to add a FIXME here though? > > I added: > > /* FIXME: This conditional code and hacky extern are necessary now, > but should be removed when GDB's and gdbserver's Linux thread_db > implementations are unified and moved into the nat directory. */ No. This file (linux-waitpid.c) really has nothing to do with thread_db (glibc interface). It's part of the kernel/ptrace layer. If we wanted this particular debug output enabled on GDB, then it'd be guarded by 'debug_linux_nat' (set debug lin-lwp 1). There's really no good reason for GDB and GDBserver to be different here, other than the history of this waitpid wrapper and how it ended up used in gdb as well. The "threads" in "debug_threads" in gdbserver is just a historic wart. That global really means "global/generic debug traces enabled". It was the only debug flag that existed in gdbserver for a long while, and nobody ever renamed it.
diff --git a/gdb/nat/linux-waitpid.c b/gdb/nat/linux-waitpid.c index 53847ac..d04a3af 100644 --- a/gdb/nat/linux-waitpid.c +++ b/gdb/nat/linux-waitpid.c @@ -17,13 +17,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ -#ifdef GDBSERVER -#include "server.h" -#else -#include "defs.h" -#include "signal.h" -#endif - +#include "common-defs.h" #include "linux-nat.h" #include "linux-waitpid.h" #include "gdb_wait.h" @@ -35,6 +29,8 @@ static inline void linux_debug (const char *format, ...) { #ifdef GDBSERVER + extern int debug_threads; + if (debug_threads) { va_list args;