projects
/
deliverable
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Change len's type to ULONGEST: remote_read_bytes and get_core_siginfo
[deliverable/binutils-gdb.git]
/
gdb
/
inf-ptrace.c
diff --git
a/gdb/inf-ptrace.c
b/gdb/inf-ptrace.c
index cb3e559a018e8f148a015ce2645c791bafbf1d55..a64c8764ed1b75309b160ab9f70007aeb4f257f5 100644
(file)
--- a/
gdb/inf-ptrace.c
+++ b/
gdb/inf-ptrace.c
@@
-1,8
+1,6
@@
/* Low-level child interface to ptrace.
/* Low-level child interface to ptrace.
- Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998,
- 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
- Free Software Foundation, Inc.
+ Copyright (C) 1988-2014 Free Software Foundation, Inc.
This file is part of GDB.
This file is part of GDB.
@@
-28,7
+26,7
@@
#include "regcache.h"
#include "gdb_assert.h"
#include "regcache.h"
#include "gdb_assert.h"
-#include
"gdb_string.h"
+#include
<string.h>
#include "gdb_ptrace.h"
#include "gdb_wait.h"
#include <signal.h>
#include "gdb_ptrace.h"
#include "gdb_wait.h"
#include <signal.h>
@@
-42,7
+40,8
@@
#ifdef PT_GET_PROCESS_STATE
static int
#ifdef PT_GET_PROCESS_STATE
static int
-inf_ptrace_follow_fork (struct target_ops *ops, int follow_child)
+inf_ptrace_follow_fork (struct target_ops *ops, int follow_child,
+ int detach_fork)
{
pid_t pid, fpid;
ptrace_state_t pe;
{
pid_t pid, fpid;
ptrace_state_t pe;
@@
-124,24
+123,20
@@
inf_ptrace_create_inferior (struct target_ops *ops,
/* Do not change either targets above or the same target if already present.
The reason is the target stack is shared across multiple inferiors. */
int ops_already_pushed = target_is_pushed (ops);
/* Do not change either targets above or the same target if already present.
The reason is the target stack is shared across multiple inferiors. */
int ops_already_pushed = target_is_pushed (ops);
- struct cleanup *back_to =
NULL
;
+ struct cleanup *back_to =
make_cleanup (null_cleanup, NULL)
;
if (! ops_already_pushed)
{
/* Clear possible core file with its process_stratum. */
push_target (ops);
if (! ops_already_pushed)
{
/* Clear possible core file with its process_stratum. */
push_target (ops);
-
back_to =
make_cleanup_unpush_target (ops);
+ make_cleanup_unpush_target (ops);
}
pid = fork_inferior (exec_file, allargs, env, inf_ptrace_me, NULL,
NULL, NULL, NULL);
}
pid = fork_inferior (exec_file, allargs, env, inf_ptrace_me, NULL,
NULL, NULL, NULL);
- if (! ops_already_pushed)
- discard_cleanups (back_to);
+ discard_cleanups (back_to);
- /* START_INFERIOR_TRAPS_EXPECTED is defined in inferior.h, and will
- be 1 or 2 depending on whether we're starting without or with a
- shell. */
startup_inferior (START_INFERIOR_TRAPS_EXPECTED);
/* On some targets, there must be some explicit actions taken after
startup_inferior (START_INFERIOR_TRAPS_EXPECTED);
/* On some targets, there must be some explicit actions taken after
@@
-198,7
+193,7
@@
inf_ptrace_attach (struct target_ops *ops, char *args, int from_tty)
/* Do not change either targets above or the same target if already present.
The reason is the target stack is shared across multiple inferiors. */
int ops_already_pushed = target_is_pushed (ops);
/* Do not change either targets above or the same target if already present.
The reason is the target stack is shared across multiple inferiors. */
int ops_already_pushed = target_is_pushed (ops);
- struct cleanup *back_to =
NULL
;
+ struct cleanup *back_to =
make_cleanup (null_cleanup, NULL)
;
pid = parse_pid_to_attach (args);
pid = parse_pid_to_attach (args);
@@
-210,7
+205,7
@@
inf_ptrace_attach (struct target_ops *ops, char *args, int from_tty)
/* target_pid_to_str already uses the target. Also clear possible core
file with its process_stratum. */
push_target (ops);
/* target_pid_to_str already uses the target. Also clear possible core
file with its process_stratum. */
push_target (ops);
-
back_to =
make_cleanup_unpush_target (ops);
+ make_cleanup_unpush_target (ops);
}
if (from_tty)
}
if (from_tty)
@@
-245,13
+240,12
@@
inf_ptrace_attach (struct target_ops *ops, char *args, int from_tty)
target, it should decorate the ptid later with more info. */
add_thread_silent (inferior_ptid);
target, it should decorate the ptid later with more info. */
add_thread_silent (inferior_ptid);
- if (! ops_already_pushed)
- discard_cleanups (back_to);
+ discard_cleanups (back_to);
}
#ifdef PT_GET_PROCESS_STATE
}
#ifdef PT_GET_PROCESS_STATE
-void
+
static
void
inf_ptrace_post_attach (int pid)
{
ptrace_event_t pe;
inf_ptrace_post_attach (int pid)
{
ptrace_event_t pe;
@@
-270,7
+264,7
@@
inf_ptrace_post_attach (int pid)
specified by ARGS. If FROM_TTY is non-zero, be chatty about it. */
static void
specified by ARGS. If FROM_TTY is non-zero, be chatty about it. */
static void
-inf_ptrace_detach (struct target_ops *ops, char *args, int from_tty)
+inf_ptrace_detach (struct target_ops *ops, c
onst c
har *args, int from_tty)
{
pid_t pid = ptid_get_pid (inferior_ptid);
int sig = 0;
{
pid_t pid = ptid_get_pid (inferior_ptid);
int sig = 0;
@@
-343,7
+337,7
@@
inf_ptrace_stop (ptid_t ptid)
static void
inf_ptrace_resume (struct target_ops *ops,
static void
inf_ptrace_resume (struct target_ops *ops,
- ptid_t ptid, int step, enum
target
_signal signal)
+ ptid_t ptid, int step, enum
gdb
_signal signal)
{
pid_t pid = ptid_get_pid (ptid);
int request;
{
pid_t pid = ptid_get_pid (ptid);
int request;
@@
-372,7
+366,7
@@
inf_ptrace_resume (struct target_ops *ops,
where it was. If GDB wanted it to start some other way, we have
already written a new program counter value to the child. */
errno = 0;
where it was. If GDB wanted it to start some other way, we have
already written a new program counter value to the child. */
errno = 0;
- ptrace (request, pid, (PTRACE_TYPE_ARG3)1,
target
_signal_to_host (signal));
+ ptrace (request, pid, (PTRACE_TYPE_ARG3)1,
gdb
_signal_to_host (signal));
if (errno != 0)
perror_with_name (("ptrace"));
}
if (errno != 0)
perror_with_name (("ptrace"));
}
@@
-409,7
+403,7
@@
inf_ptrace_wait (struct target_ops *ops,
/* Claim it exited with unknown signal. */
ourstatus->kind = TARGET_WAITKIND_SIGNALLED;
/* Claim it exited with unknown signal. */
ourstatus->kind = TARGET_WAITKIND_SIGNALLED;
- ourstatus->value.sig =
TARGET
_SIGNAL_UNKNOWN;
+ ourstatus->value.sig =
GDB
_SIGNAL_UNKNOWN;
return inferior_ptid;
}
return inferior_ptid;
}
@@
-469,7
+463,7
@@
static LONGEST
inf_ptrace_xfer_partial (struct target_ops *ops, enum target_object object,
const char *annex, gdb_byte *readbuf,
const gdb_byte *writebuf,
inf_ptrace_xfer_partial (struct target_ops *ops, enum target_object object,
const char *annex, gdb_byte *readbuf,
const gdb_byte *writebuf,
- ULONGEST offset, LONGEST len)
+ ULONGEST offset,
U
LONGEST len)
{
pid_t pid = ptid_get_pid (inferior_ptid);
{
pid_t pid = ptid_get_pid (inferior_ptid);
@@
-650,11
+644,11
@@
static int
inf_ptrace_auxv_parse (struct target_ops *ops, gdb_byte **readptr,
gdb_byte *endptr, CORE_ADDR *typep, CORE_ADDR *valp)
{
inf_ptrace_auxv_parse (struct target_ops *ops, gdb_byte **readptr,
gdb_byte *endptr, CORE_ADDR *typep, CORE_ADDR *valp)
{
- struct type *int_type = builtin_type (target_gdbarch)->builtin_int;
- struct type *ptr_type = builtin_type (target_gdbarch)->builtin_data_ptr;
+ struct type *int_type = builtin_type (target_gdbarch
()
)->builtin_int;
+ struct type *ptr_type = builtin_type (target_gdbarch
()
)->builtin_data_ptr;
const int sizeof_auxv_type = TYPE_LENGTH (int_type);
const int sizeof_auxv_val = TYPE_LENGTH (ptr_type);
const int sizeof_auxv_type = TYPE_LENGTH (int_type);
const int sizeof_auxv_val = TYPE_LENGTH (ptr_type);
- enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch);
+ enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch
()
);
gdb_byte *ptr = *readptr;
if (endptr == ptr)
gdb_byte *ptr = *readptr;
if (endptr == ptr)
This page took
0.027691 seconds
and
4
git commands to generate.