From: Sergio Durigan Junior <sergiodj@redhat.com>
To: GDB Patches <gdb-patches@sourceware.org>
Cc: Pedro Alves <palves@redhat.com>,
Sergio Durigan Junior <sergiodj@redhat.com>
Subject: [PATCH v5 1/5] Move parts of inferior job control to common/
Date: Thu, 30 Mar 2017 01:50:00 -0000 [thread overview]
Message-ID: <20170330014915.4894-2-sergiodj@redhat.com> (raw)
In-Reply-To: <20170330014915.4894-1-sergiodj@redhat.com>
This commit moves a few bits responsible for dealing with inferior job
control from GDB to common/, which makes them available to gdbserver.
This is necessary for the upcoming patches that will share
fork_inferior et al between GDB and gdbserver.
We move some parts of gdb/terminal.h to gdb/common/common-terminal.h,
especifically the code that checks terminal features and that are used
to set job_control accordingly.
After sharing parts of gdb/terminal.h, we also to share the two
functions on gdb/inflow.c that are going to be needed by the
fork_inferior rework. They are 'gdb_setpgid' and the new
'have_job_control'. I've also taken the opportunity to give a more
meaningful name to "inflow.c" on common/. Now it is called
"job-control.c" (thanks Pedro for the suggestion).
gdb/ChangeLog:
yyyy-mm-dd Sergio Durigan Junior <sergiodj@redhat.com>
* Makefile.in (SFILES): Add "common/job-control.c".
(HFILES_NO_SRCDIR): Add "common/common-terminal.h".
(COMMON_OBS): Add "common/job-control.o".
* common/common-terminal.h: New file, with parts of "terminal.h".
* common/common.m4: Check headers 'termios.h', 'termio.h' and
'sgtty.h'.
* common/job-control.c: New file, with contents from
"gdb/inflow.c".
* inflow.c (gdb_setpgid): Move to "common/common-inflow.c".
(_initialize_inflow): Move setting of "job_control" to
"handle_job_control".
* terminal.h: Move terminal-related defines to
"common/common-terminal.h". Include "common/common-terminal.h".
(job_control): Moved to "common/common-terminal.h".
(gdb_setpgid): Likewise.
* utils.c (job_control): Remove.
gdb/gdbserver/ChangeLog:
yyyy-mm-dd Sergio Durigan Junior <sergiodj@redhat.com>
* Makefile.in (SFILE): Add "common/job-control.c".
(OBS): Add "job-control.o".
* terminal.h: Include "common-terminal.h".
---
gdb/Makefile.in | 3 ++
gdb/common/common-terminal.h | 94 ++++++++++++++++++++++++++++++++++++++++++++
gdb/common/common.m4 | 3 +-
gdb/common/job-control.c | 92 +++++++++++++++++++++++++++++++++++++++++++
gdb/gdbserver/Makefile.in | 2 +
gdb/gdbserver/terminal.h | 2 +
gdb/inflow.c | 63 +----------------------------
gdb/terminal.h | 69 +-------------------------------
gdb/utils.c | 4 --
9 files changed, 198 insertions(+), 134 deletions(-)
create mode 100644 gdb/common/common-terminal.h
create mode 100644 gdb/common/job-control.c
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index 0818742..6ad03d7 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -1210,6 +1210,7 @@ SFILES = \
common/fileio.c \
common/filestuff.c \
common/format.c \
+ common/job-control.c \
common/gdb_vecs.c \
common/new-op.c \
common/print-utils.c \
@@ -1484,6 +1485,7 @@ HFILES_NO_SRCDIR = \
common/common-regcache.h \
common/common-types.h \
common/common-utils.h \
+ common/common-terminal.h \
common/errors.h \
common/environ.h \
common/fileio.h \
@@ -1637,6 +1639,7 @@ COMMON_OBS = $(DEPFILES) $(CONFIG_OBS) $(YYOBJ) \
common-agent.o \
common-debug.o \
common-exceptions.o \
+ job-control.o \
common-regcache.o \
common-utils.o \
complaints.o \
diff --git a/gdb/common/common-terminal.h b/gdb/common/common-terminal.h
new file mode 100644
index 0000000..4026a08
--- /dev/null
+++ b/gdb/common/common-terminal.h
@@ -0,0 +1,94 @@
+/* Common terminal interface definitions for GDB and gdbserver.
+ Copyright (C) 1986-2017 Free Software Foundation, Inc.
+
+ This file is part of GDB.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#ifndef COMMON_TERMINAL_H
+#define COMMON_TERMINAL_H
+
+/* If we're using autoconf, it will define HAVE_TERMIOS_H,
+ HAVE_TERMIO_H and HAVE_SGTTY_H for us. One day we can rewrite
+ ser-unix.c and inflow.c to inspect those names instead of
+ HAVE_TERMIOS, HAVE_TERMIO and the implicit HAVE_SGTTY (when neither
+ HAVE_TERMIOS or HAVE_TERMIO is set). Until then, make sure that
+ nothing has already defined the one of the names, and do the right
+ thing. */
+
+#if !defined (HAVE_TERMIOS) && !defined(HAVE_TERMIO) && !defined(HAVE_SGTTY)
+#if defined(HAVE_TERMIOS_H)
+#define HAVE_TERMIOS
+#else /* ! defined (HAVE_TERMIOS_H) */
+#if defined(HAVE_TERMIO_H)
+#define HAVE_TERMIO
+#else /* ! defined (HAVE_TERMIO_H) */
+#if defined(HAVE_SGTTY_H)
+#define HAVE_SGTTY
+#endif /* ! defined (HAVE_SGTTY_H) */
+#endif /* ! defined (HAVE_TERMIO_H) */
+#endif /* ! defined (HAVE_TERMIOS_H) */
+#endif /* !defined (HAVE_TERMIOS) && !defined (HAVE_TERMIO) &&
+ !defined (HAVE_SGTTY) */
+
+#if defined(HAVE_TERMIOS)
+#include <termios.h>
+#endif
+
+#if !defined(_WIN32) && !defined (HAVE_TERMIOS)
+
+/* Define a common set of macros -- BSD based -- and redefine whatever
+ the system offers to make it look like that. FIXME: serial.h and
+ ser-*.c deal with this in a much cleaner fashion; as soon as stuff
+ is converted to use them, can get rid of this crap. */
+
+#ifdef HAVE_TERMIO
+
+#include <termio.h>
+
+#undef TIOCGETP
+#define TIOCGETP TCGETA
+#undef TIOCSETN
+#define TIOCSETN TCSETA
+#undef TIOCSETP
+#define TIOCSETP TCSETAF
+#define TERMINAL struct termio
+
+#else /* sgtty */
+
+#include <fcntl.h>
+#include <sgtty.h>
+#include <sys/ioctl.h>
+#define TERMINAL struct sgttyb
+
+#endif /* sgtty */
+#endif
+
+#include <sys/types.h>
+
+/* Do we have job control? Can be assumed to always be the same
+ within a given run of GDB. Use in gdb/inflow.c and
+ common/common-inflow.c. */
+extern int job_control;
+
+/* Set the process group of the caller to its own pid, or do nothing
+ if we lack job control. */
+extern int gdb_setpgid (void);
+
+/* Determine whether we have job control, and set variable JOB_CONTROL
+ accordingly. This function must be called before any use of
+ JOB_CONTROL. */
+extern void have_job_control (void);
+
+#endif /* ! COMMON_TERMINAL_H */
diff --git a/gdb/common/common.m4 b/gdb/common/common.m4
index e21e6e5..45726ab 100644
--- a/gdb/common/common.m4
+++ b/gdb/common/common.m4
@@ -28,7 +28,8 @@ AC_DEFUN([GDB_AC_COMMON], [
AC_CHECK_HEADERS(linux/perf_event.h locale.h memory.h signal.h dnl
sys/resource.h sys/socket.h sys/syscall.h dnl
sys/un.h sys/wait.h dnl
- thread_db.h wait.h)
+ thread_db.h wait.h dnl
+ termios.h termio.h sgtty.h)
AC_CHECK_FUNCS([fdwalk getrlimit pipe pipe2 socketpair sigaction])
diff --git a/gdb/common/job-control.c b/gdb/common/job-control.c
new file mode 100644
index 0000000..14b719e
--- /dev/null
+++ b/gdb/common/job-control.c
@@ -0,0 +1,92 @@
+/* Job control and terminal related functions, for GDB and gdbserver
+ when running under Unix.
+
+ Copyright (C) 1986-2017 Free Software Foundation, Inc.
+
+ This file is part of GDB.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#include "common-defs.h"
+#include "common-terminal.h"
+
+/* Nonzero if we have job control. */
+int job_control;
+
+/* Set the process group ID of the inferior.
+
+ Just using job_control only does part of it because setpgid or
+ setpgrp might not exist on a system without job control.
+
+ For a more clean implementation, in libiberty, put a setpgid which merely
+ calls setpgrp and a setpgrp which does nothing (any system with job control
+ will have one or the other). */
+
+int
+gdb_setpgid (void)
+{
+ int retval = 0;
+
+ if (job_control)
+ {
+#if defined (HAVE_TERMIOS) || defined (TIOCGPGRP)
+#ifdef HAVE_SETPGID
+ /* The call setpgid (0, 0) is supposed to work and mean the same
+ thing as this, but on Ultrix 4.2A it fails with EPERM (and
+ setpgid (getpid (), getpid ()) succeeds). */
+ retval = setpgid (getpid (), getpid ());
+#else
+#ifdef HAVE_SETPGRP
+#ifdef SETPGRP_VOID
+ retval = setpgrp ();
+#else
+ retval = setpgrp (getpid (), getpid ());
+#endif
+#endif /* HAVE_SETPGRP */
+#endif /* HAVE_SETPGID */
+#endif /* defined (HAVE_TERMIOS) || defined (TIOCGPGRP) */
+ }
+
+ return retval;
+}
+
+/* See common/common-terminal.h. */
+
+void
+have_job_control (void)
+{
+ /* OK, figure out whether we have job control. If neither termios nor
+ sgtty (i.e. termio or go32), leave job_control 0. */
+#if defined (HAVE_TERMIOS)
+ /* Do all systems with termios have the POSIX way of identifying job
+ control? I hope so. */
+#ifdef _POSIX_JOB_CONTROL
+ job_control = 1;
+#else
+#ifdef _SC_JOB_CONTROL
+ job_control = sysconf (_SC_JOB_CONTROL);
+#else
+ job_control = 0; /* Have to assume the worst. */
+#endif /* _SC_JOB_CONTROL */
+#endif /* _POSIX_JOB_CONTROL */
+#endif /* HAVE_TERMIOS */
+
+#ifdef HAVE_SGTTY
+#ifdef TIOCGPGRP
+ job_control = 1;
+#else
+ job_control = 0;
+#endif /* TIOCGPGRP */
+#endif /* sgtty */
+}
diff --git a/gdb/gdbserver/Makefile.in b/gdb/gdbserver/Makefile.in
index 9935012..340c9c0 100644
--- a/gdb/gdbserver/Makefile.in
+++ b/gdb/gdbserver/Makefile.in
@@ -204,6 +204,7 @@ SFILES = \
$(srcdir)/common/environ.c \
$(srcdir)/common/fileio.c \
$(srcdir)/common/filestuff.c \
+ $(srcdir)/common/job-control.c \
$(srcdir)/common/gdb_vecs.c \
$(srcdir)/common/new-op.c \
$(srcdir)/common/print-utils.c \
@@ -234,6 +235,7 @@ OBS = \
cleanups.o \
common-debug.o \
common-exceptions.o \
+ job-control.o \
common-regcache.o \
common-utils.o \
debug.o \
diff --git a/gdb/gdbserver/terminal.h b/gdb/gdbserver/terminal.h
index 3bdd5f5..498ab26 100644
--- a/gdb/gdbserver/terminal.h
+++ b/gdb/gdbserver/terminal.h
@@ -19,6 +19,8 @@
#if !defined (TERMINAL_H)
#define TERMINAL_H 1
+#include "common-terminal.h"
+
/* Autoconf will have defined HAVE_TERMIOS_H, HAVE_TERMIO_H,
and HAVE_SGTTY_H for us as appropriate. */
diff --git a/gdb/inflow.c b/gdb/inflow.c
index 7ffa83a..271278d 100644
--- a/gdb/inflow.c
+++ b/gdb/inflow.c
@@ -803,43 +803,6 @@ create_tty_session (void)
#endif /* HAVE_SETSID */
}
-/* This is here because this is where we figure out whether we (probably)
- have job control. Just using job_control only does part of it because
- setpgid or setpgrp might not exist on a system without job control.
- It might be considered misplaced (on the other hand, process groups and
- job control are closely related to ttys).
-
- For a more clean implementation, in libiberty, put a setpgid which merely
- calls setpgrp and a setpgrp which does nothing (any system with job control
- will have one or the other). */
-int
-gdb_setpgid (void)
-{
- int retval = 0;
-
- if (job_control)
- {
-#if defined (HAVE_TERMIOS) || defined (TIOCGPGRP)
-#ifdef HAVE_SETPGID
- /* The call setpgid (0, 0) is supposed to work and mean the same
- thing as this, but on Ultrix 4.2A it fails with EPERM (and
- setpgid (getpid (), getpid ()) succeeds). */
- retval = setpgid (getpid (), getpid ());
-#else
-#ifdef HAVE_SETPGRP
-#ifdef SETPGRP_VOID
- retval = setpgrp ();
-#else
- retval = setpgrp (getpid (), getpid ());
-#endif
-#endif /* HAVE_SETPGRP */
-#endif /* HAVE_SETPGID */
-#endif /* defined (HAVE_TERMIOS) || defined (TIOCGPGRP) */
- }
-
- return retval;
-}
-
/* Get all the current tty settings (including whether we have a
tty at all!). We can't do this in _initialize_inflow because
serial_fdopen() won't work until the serial_ops_list is
@@ -860,30 +823,8 @@ _initialize_inflow (void)
terminal_is_ours = 1;
- /* OK, figure out whether we have job control. If neither termios nor
- sgtty (i.e. termio or go32), leave job_control 0. */
-
-#if defined (HAVE_TERMIOS)
- /* Do all systems with termios have the POSIX way of identifying job
- control? I hope so. */
-#ifdef _POSIX_JOB_CONTROL
- job_control = 1;
-#else
-#ifdef _SC_JOB_CONTROL
- job_control = sysconf (_SC_JOB_CONTROL);
-#else
- job_control = 0; /* Have to assume the worst. */
-#endif /* _SC_JOB_CONTROL */
-#endif /* _POSIX_JOB_CONTROL */
-#endif /* HAVE_TERMIOS */
-
-#ifdef HAVE_SGTTY
-#ifdef TIOCGPGRP
- job_control = 1;
-#else
- job_control = 0;
-#endif /* TIOCGPGRP */
-#endif /* sgtty */
+ /* OK, figure out whether we have job control. */
+ have_job_control ();
observer_attach_inferior_exit (inflow_inferior_exit);
diff --git a/gdb/terminal.h b/gdb/terminal.h
index d8691b2..3243279 100644
--- a/gdb/terminal.h
+++ b/gdb/terminal.h
@@ -19,62 +19,7 @@
#if !defined (TERMINAL_H)
#define TERMINAL_H 1
-
-/* If we're using autoconf, it will define HAVE_TERMIOS_H,
- HAVE_TERMIO_H and HAVE_SGTTY_H for us. One day we can rewrite
- ser-unix.c and inflow.c to inspect those names instead of
- HAVE_TERMIOS, HAVE_TERMIO and the implicit HAVE_SGTTY (when neither
- HAVE_TERMIOS or HAVE_TERMIO is set). Until then, make sure that
- nothing has already defined the one of the names, and do the right
- thing. */
-
-#if !defined (HAVE_TERMIOS) && !defined(HAVE_TERMIO) && !defined(HAVE_SGTTY)
-#if defined(HAVE_TERMIOS_H)
-#define HAVE_TERMIOS
-#else /* ! defined (HAVE_TERMIOS_H) */
-#if defined(HAVE_TERMIO_H)
-#define HAVE_TERMIO
-#else /* ! defined (HAVE_TERMIO_H) */
-#if defined(HAVE_SGTTY_H)
-#define HAVE_SGTTY
-#endif /* ! defined (HAVE_SGTTY_H) */
-#endif /* ! defined (HAVE_TERMIO_H) */
-#endif /* ! defined (HAVE_TERMIOS_H) */
-#endif /* !defined (HAVE_TERMIOS) && !defined (HAVE_TERMIO) &&
- !defined (HAVE_SGTTY) */
-
-#if defined(HAVE_TERMIOS)
-#include <termios.h>
-#endif
-
-#if !defined(_WIN32) && !defined (HAVE_TERMIOS)
-
-/* Define a common set of macros -- BSD based -- and redefine whatever
- the system offers to make it look like that. FIXME: serial.h and
- ser-*.c deal with this in a much cleaner fashion; as soon as stuff
- is converted to use them, can get rid of this crap. */
-
-#ifdef HAVE_TERMIO
-
-#include <termio.h>
-
-#undef TIOCGETP
-#define TIOCGETP TCGETA
-#undef TIOCSETN
-#define TIOCSETN TCSETA
-#undef TIOCSETP
-#define TIOCSETP TCSETAF
-#define TERMINAL struct termio
-
-#else /* sgtty */
-
-#include <fcntl.h>
-#include <sgtty.h>
-#include <sys/ioctl.h>
-#define TERMINAL struct sgttyb
-
-#endif /* sgtty */
-#endif
+#include "common-terminal.h"
struct inferior;
@@ -86,16 +31,8 @@ extern void new_tty_postfork (void);
extern void copy_terminal_info (struct inferior *to, struct inferior *from);
-/* Do we have job control? Can be assumed to always be the same within
- a given run of GDB. In inflow.c. */
-extern int job_control;
-
extern pid_t create_tty_session (void);
-/* Set the process group of the caller to its own pid, or do nothing if
- we lack job control. */
-extern int gdb_setpgid (void);
-
/* Set up a serial structure describing standard input. In inflow.c. */
extern void initialize_stdin_serial (void);
@@ -105,8 +42,4 @@ extern void gdb_save_tty_state (void);
have had a chance to alter it. */
extern void set_initial_gdb_ttystate (void);
-/* Set the process group of the caller to its own pid, or do nothing
- if we lack job control. */
-extern int gdb_setpgid (void);
-
#endif /* !defined (TERMINAL_H) */
diff --git a/gdb/utils.c b/gdb/utils.c
index 39798cc..d7a1993 100644
--- a/gdb/utils.c
+++ b/gdb/utils.c
@@ -102,10 +102,6 @@ static std::chrono::steady_clock::duration prompt_for_continue_wait_time;
static int debug_timestamp = 0;
-/* Nonzero if we have job control. */
-
-int job_control;
-
/* Nonzero means that strings with character values >0x7F should be printed
as octal escapes. Zero means just print the value (e.g. it's an
international character, and the terminal or window can cope.) */
--
2.9.3
next prev parent reply other threads:[~2017-03-30 1:50 UTC|newest]
Thread overview: 155+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-23 3:39 [PATCH 0/6] Implement the ability to start inferiors with a shell on gdbserver Sergio Durigan Junior
2016-12-23 3:39 ` [PATCH 3/6] Share parts of gdb/inflow.c with gdbserver Sergio Durigan Junior
2016-12-26 21:34 ` Luis Machado
2017-01-03 21:16 ` Sergio Durigan Junior
2016-12-23 3:39 ` [PATCH 2/6] Share parts of gdb/terminal.h " Sergio Durigan Junior
2016-12-26 21:35 ` Luis Machado
2017-01-03 21:14 ` Sergio Durigan Junior
2017-01-03 21:27 ` Luis Machado
2017-01-03 21:38 ` Sergio Durigan Junior
2016-12-23 3:39 ` [PATCH 1/6] Share gdb/environ.[ch] " Sergio Durigan Junior
2016-12-26 21:34 ` Luis Machado
2016-12-23 3:45 ` [PATCH 5/6] Share fork_inferior et al " Sergio Durigan Junior
2017-01-03 23:32 ` Luis Machado
2017-01-05 20:11 ` Sergio Durigan Junior
2018-02-21 3:58 ` [RFC] "gdbserver ... BASENAME_EXE" no longer works (was: "[PATCH 5/6] Share fork_inferior et al with gdbserver") Joel Brobecker
2018-02-21 6:15 ` [RFC] "gdbserver ... BASENAME_EXE" no longer works Sergio Durigan Junior
2018-02-21 7:37 ` Joel Brobecker
2016-12-23 3:45 ` [PATCH 4/6] Share parts of gdb/gdbthread.h with gdbserver Sergio Durigan Junior
2016-12-26 21:35 ` Luis Machado
2017-01-03 21:31 ` Sergio Durigan Junior
2016-12-23 3:49 ` [PATCH 6/6] Implement proper "startup-with-shell" support on gdbserver Sergio Durigan Junior
2016-12-23 8:07 ` Eli Zaretskii
2017-01-03 20:48 ` Sergio Durigan Junior
2017-01-04 16:08 ` Eli Zaretskii
2017-01-05 20:12 ` Sergio Durigan Junior
2016-12-26 21:34 ` Luis Machado
2017-01-03 21:35 ` Sergio Durigan Junior
2016-12-27 0:26 ` Tom Tromey
2017-01-03 21:32 ` Sergio Durigan Junior
2016-12-23 7:50 ` [PATCH 0/6] Implement the ability to start inferiors with a shell " Eli Zaretskii
2017-01-03 20:23 ` Sergio Durigan Junior
2017-01-18 15:36 ` [PATCH v2] " Sergio Durigan Junior
2017-01-18 15:36 ` [PATCH v2 2/6] Share parts of gdb/terminal.h with gdbserver Sergio Durigan Junior
2017-02-01 18:37 ` Luis Machado
2017-02-07 22:39 ` Sergio Durigan Junior
2017-01-18 15:36 ` [PATCH v2 6/6] Implement proper "startup-with-shell" support on gdbserver Sergio Durigan Junior
2017-01-18 16:43 ` Eli Zaretskii
2017-02-01 19:07 ` Luis Machado
2017-01-18 15:36 ` [PATCH v2 3/6] Share parts of gdb/inflow.c with gdbserver Sergio Durigan Junior
2017-02-01 18:41 ` Luis Machado
2017-01-18 15:36 ` [PATCH v2 1/6] Share gdb/environ.[ch] " Sergio Durigan Junior
2017-02-01 20:35 ` Luis Machado
2017-01-18 15:42 ` [PATCH v2 4/6] Share parts of gdb/gdbthread.h " Sergio Durigan Junior
2017-02-01 18:54 ` Luis Machado
2017-02-07 22:42 ` Sergio Durigan Junior
2017-02-08 9:07 ` Luis Machado
2017-01-18 15:44 ` [PATCH v2 5/6] Share fork_inferior et al " Sergio Durigan Junior
2017-02-01 21:39 ` Luis Machado
2017-02-07 22:23 ` Sergio Durigan Junior
2017-01-26 22:47 ` [PATCH v2] Implement the ability to start inferiors with a shell on gdbserver Sergio Durigan Junior
2017-01-27 7:45 ` Eli Zaretskii
2017-01-27 17:59 ` Sergio Durigan Junior
2017-02-08 3:25 ` [PATCH v3 0/6] " Sergio Durigan Junior
2017-02-08 3:25 ` [PATCH v3 3/6] Share parts of gdb/inflow.c with gdbserver Sergio Durigan Junior
2017-02-15 16:02 ` Pedro Alves
2017-02-16 22:06 ` Sergio Durigan Junior
2017-02-08 3:25 ` [PATCH v3 1/6] Share gdb/environ.[ch] " Sergio Durigan Junior
2017-02-15 15:36 ` Pedro Alves
2017-03-07 20:50 ` Sergio Durigan Junior
2017-02-08 3:25 ` [PATCH v3 2/6] Share parts of gdb/terminal.h " Sergio Durigan Junior
2017-02-15 15:54 ` Pedro Alves
2017-02-16 21:37 ` Sergio Durigan Junior
2017-02-08 3:32 ` [PATCH v3 5/6] Share fork_inferior et al " Sergio Durigan Junior
2017-02-15 17:28 ` Pedro Alves
2017-02-16 12:23 ` Philipp Rudo
2017-02-16 12:26 ` Pedro Alves
2017-02-16 12:37 ` Philipp Rudo
[not found] ` <87bmtcg91v.fsf@redhat.com>
2017-03-13 15:34 ` Pedro Alves
2017-02-08 3:33 ` [PATCH v3 6/6] Implement proper "startup-with-shell" support on gdbserver Sergio Durigan Junior
2017-02-08 17:34 ` Eli Zaretskii
2017-02-09 0:02 ` Sergio Durigan Junior
2017-02-17 16:05 ` Pedro Alves
2017-02-17 16:27 ` Eli Zaretskii
2017-03-07 20:59 ` Sergio Durigan Junior
2017-03-13 15:12 ` Pedro Alves
2017-02-08 3:33 ` [PATCH v3 4/6] Share parts of gdb/gdbthread.h with gdbserver Sergio Durigan Junior
2017-02-15 16:15 ` Pedro Alves
2017-02-21 21:27 ` Sergio Durigan Junior
2017-02-13 19:50 ` [PATCH v3 0/6] Implement the ability to start inferiors with a shell on gdbserver Sergio Durigan Junior
2017-03-08 5:29 ` [PATCH v4 0/5] " Sergio Durigan Junior
2017-03-08 5:29 ` [PATCH v4 1/5] Share parts of gdb/terminal.h with gdbserver Sergio Durigan Junior
2017-03-08 5:29 ` [PATCH v4 3/5] Share parts of gdb/gdbthread.h " Sergio Durigan Junior
2017-03-08 5:29 ` [PATCH v4 5/5] Implement proper "startup-with-shell" support on gdbserver Sergio Durigan Junior
2017-03-08 15:49 ` Eli Zaretskii
2017-03-13 17:26 ` Pedro Alves
2017-03-08 5:29 ` [PATCH v4 2/5] Share parts of gdb/inflow.c with gdbserver Sergio Durigan Junior
2017-03-08 5:29 ` [PATCH v4 4/5] Share fork_inferior et al " Sergio Durigan Junior
2017-03-13 17:04 ` Pedro Alves
2017-03-17 1:02 ` Sergio Durigan Junior
2017-03-17 10:27 ` Pedro Alves
2017-03-30 1:50 ` [PATCH v5 0/5] Implement the ability to start inferiors with a shell on gdbserver Sergio Durigan Junior
2017-03-30 1:50 ` [PATCH v5 2/5] Share parts of gdb/gdbthread.h with gdbserver Sergio Durigan Junior
2017-03-31 17:15 ` Pedro Alves
2017-04-07 2:53 ` Sergio Durigan Junior
2017-03-30 1:50 ` [PATCH v5 3/5] C++-fy and prepare for sharing fork_inferior Sergio Durigan Junior
2017-04-07 18:30 ` Pedro Alves
2017-04-12 0:24 ` Sergio Durigan Junior
2017-04-12 5:04 ` Sergio Durigan Junior
2017-04-12 5:19 ` [obv/commit] Fix build breakage from last commit (window-nat.c:windows_create_inferior) Sergio Durigan Junior
2017-04-12 10:14 ` [PATCH] fork-child.c: Avoid unnecessary heap-allocation / string copying (Re: [PATCH v5 3/5] C++-fy and prepare for sharing fork_inferior) Pedro Alves
2017-04-12 22:26 ` Sergio Durigan Junior
2017-04-13 3:42 ` Pedro Alves
2017-04-13 4:33 ` Sergio Durigan Junior
2017-04-13 10:51 ` Pedro Alves
2017-04-13 18:30 ` Sergio Durigan Junior
2017-04-14 1:03 ` [obv/commit] Fix build breakage on Cygwin (PR gdb/21385) Sergio Durigan Junior
2017-03-30 1:50 ` Sergio Durigan Junior [this message]
2017-03-31 17:11 ` [PATCH v5 1/5] Move parts of inferior job control to common/ Pedro Alves
2017-03-31 17:31 ` Sergio Durigan Junior
2017-03-31 18:21 ` Pedro Alves
2017-03-31 21:20 ` Sergio Durigan Junior
2017-04-07 17:51 ` Pedro Alves
2017-04-12 0:25 ` Sergio Durigan Junior
2017-04-12 1:17 ` [PATCH] Create gdb_termios.h (and cleanup gdb/{,gdbserver/}terminal.h) Sergio Durigan Junior
2017-04-12 10:28 ` Pedro Alves
2017-04-12 22:00 ` Sergio Durigan Junior
2017-03-30 1:55 ` [PATCH v5 5/5] Implement proper "startup-with-shell" support on gdbserver Sergio Durigan Junior
2017-03-30 1:55 ` [PATCH v5 4/5] Share fork_inferior et al with gdbserver Sergio Durigan Junior
2017-05-04 5:31 ` [PATCH v6 0/4] Implement the ability to start inferiors with a shell on gdbserver Sergio Durigan Junior
2017-05-04 5:32 ` [PATCH v6 3/4] Share fork_inferior et al with gdbserver Sergio Durigan Junior
2017-05-05 19:05 ` Pedro Alves
2017-05-31 3:43 ` Sergio Durigan Junior
2017-06-07 10:16 ` Pedro Alves
2017-06-07 12:23 ` Pedro Alves
2017-06-07 21:01 ` Sergio Durigan Junior
2017-06-07 21:06 ` Pedro Alves
2017-06-07 21:00 ` Sergio Durigan Junior
2017-05-04 5:32 ` [PATCH v6 2/4] Share parts of gdb/gdbthread.h " Sergio Durigan Junior
2017-05-05 19:04 ` Pedro Alves
2017-05-06 14:15 ` Sergio Durigan Junior
2017-05-04 5:32 ` [PATCH v6 1/4] Move parts of inferior job control to common/ Sergio Durigan Junior
2017-05-04 5:38 ` [PATCH v6 4/4] Implement proper "startup-with-shell" support on gdbserver Sergio Durigan Junior
2017-05-05 19:21 ` Pedro Alves
2017-06-04 22:18 ` [PATCH v7 0/4] Implement the ability to start inferiors with a shell " Sergio Durigan Junior
2017-06-04 22:18 ` [PATCH v7 1/4] Move parts of inferior job control to common/ Sergio Durigan Junior
2017-06-04 22:18 ` [PATCH v7 4/4] Implement proper "startup-with-shell" support on gdbserver Sergio Durigan Junior
2017-06-05 2:31 ` Eli Zaretskii
2017-06-04 22:18 ` [PATCH v7 2/4] Share parts of gdb/gdbthread.h with gdbserver Sergio Durigan Junior
2017-06-04 22:18 ` [PATCH v7 3/4] Share fork_inferior et al " Sergio Durigan Junior
2017-06-07 12:29 ` Pedro Alves
2017-06-07 21:06 ` Sergio Durigan Junior
2017-06-07 21:41 ` Sergio Durigan Junior
2017-06-07 22:05 ` Pedro Alves
2017-06-07 22:08 ` Sergio Durigan Junior
2017-06-07 22:14 ` Pedro Alves
2017-06-07 22:15 ` Sergio Durigan Junior
2017-06-07 22:29 ` Pedro Alves
2017-06-08 0:00 ` Sergio Durigan Junior
2019-02-14 15:38 ` Thomas Schwinge
2017-06-08 16:40 ` Yao Qi
2017-06-08 18:49 ` Sergio Durigan Junior
2017-06-08 21:02 ` [commit/obvious] Fix possible bug when no args have been provided to the executable Sergio Durigan Junior
2017-06-09 22:19 ` [commit/obvious] Include <signal.h> on gdbserver/fork-child.c (and fix regressions) Sergio Durigan Junior
2017-06-21 17:01 ` [PATCH v7 3/4] Share fork_inferior et al with gdbserver Simon Marchi
2017-06-21 17:19 ` Sergio Durigan Junior
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170330014915.4894-2-sergiodj@redhat.com \
--to=sergiodj@redhat.com \
--cc=gdb-patches@sourceware.org \
--cc=palves@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox