aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@cygnus>1992-09-18 08:09:25 +0000
committerJohn Gilmore <gnu@cygnus>1992-09-18 08:09:25 +0000
commit6bb40269a062289f548b9ea1ac522ef62ad9f49b (patch)
tree1ba968801b4952050283fc2204e29e9b45c14b8c
parent997cc2c0a3ca76b3da1489ce530df5d0c3a46a2c (diff)
downloadgdb-6bb40269a062289f548b9ea1ac522ef62ad9f49b.zip
gdb-6bb40269a062289f548b9ea1ac522ef62ad9f49b.tar.gz
gdb-6bb40269a062289f548b9ea1ac522ef62ad9f49b.tar.bz2
* tm-rs6000.h (AIX_BUGGY_PTRACE_CALL): Zap, we think we fixed it.
Rich and I believe the "real problem" was that both single_step and target_resume were issuing PT_CONTINUE calls. This would cause the second PT_CONTINUE to sometimes fail because the process was already running. * infptrace.c (child_resume): Remove AIX_BUGGY_PTRACE_CALL kludge.
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/infptrace.c6
-rw-r--r--gdb/tm-rs6000.h14
3 files changed, 7 insertions, 19 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index e3e5212..1ff89d4 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -34,6 +34,12 @@ Tue Sep 15 01:18:50 1992 John Gilmore (gnu@cygnus.com)
here; it is dealt with at a gdb-target-independent level.
* rs6000-tdep.c (single_step): Don't call ptrace, we are a
high toned routine. Fix return type to void.
+ * tm-rs6000.h (AIX_BUGGY_PTRACE_CALL): Zap, we think we fixed it.
+ Rich and I believe the "real problem" was that both single_step
+ and target_resume were issuing PT_CONTINUE calls. This would
+ cause the second PT_CONTINUE to sometimes fail because the process
+ was already running.
+ * infptrace.c (child_resume): Remove AIX_BUGGY_PTRACE_CALL kludge.
Mon Sep 14 19:20:43 1992 Stu Grossman (grossman at cygnus.com)
diff --git a/gdb/infptrace.c b/gdb/infptrace.c
index 87178cd..23cb8f4 100644
--- a/gdb/infptrace.c
+++ b/gdb/infptrace.c
@@ -128,13 +128,9 @@ child_resume (step, signal)
instructions), so we don't have to worry about that here. */
if (step)
- ptrace (PT_STEP, inferior_pid, (PTRACE_ARG3_TYPE) 1, signal);
+ ptrace (PT_STEP, inferior_pid, (PTRACE_ARG3_TYPE) 1, signal);
else
-#ifdef AIX_BUGGY_PTRACE_CONTINUE
- AIX_BUGGY_PTRACE_CONTINUE;
-#else
ptrace (PT_CONTINUE, inferior_pid, (PTRACE_ARG3_TYPE) 1, signal);
-#endif
if (errno)
perror_with_name ("ptrace");
diff --git a/gdb/tm-rs6000.h b/gdb/tm-rs6000.h
index 1adcc86..1b0ffde 100644
--- a/gdb/tm-rs6000.h
+++ b/gdb/tm-rs6000.h
@@ -18,20 +18,6 @@ You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-/* A successful ptrace(continue) might return errno != 0 in this particular port
- of rs6000. I am not sure why. We will use this kludge and ignore it until
- we figure out the real problem. */
-
-#define AIX_BUGGY_PTRACE_CONTINUE \
-{ \
- int ret = ptrace (PT_CONTINUE, inferior_pid, \
- (PTRACE_ARG3_TYPE) 1, signal, 0); \
- if (errno) { \
-/* printf ("ret: %d, errno: %d, signal: %d\n", ret, errno, signal); */ \
- errno = 0; } \
-}
-
extern int symtab_relocated;
/* Minimum possible text address in AIX */