* 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.
This commit is contained in:
John Gilmore 1992-09-18 08:09:25 +00:00
parent 997cc2c0a3
commit 6bb40269a0
3 changed files with 7 additions and 19 deletions

View File

@ -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)

View File

@ -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");

View File

@ -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 */