2003-04-17 Jeff Johnston <jjohnstn@redhat.com>
* thread-db.c: Reindented.
This commit is contained in:
parent
530b167e9a
commit
b4acd5590b
2 changed files with 70 additions and 59 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
2003-04-17 Jeff Johnston <jjohnstn@redhat.com>
|
||||||
|
|
||||||
|
* thread-db.c: Reindented.
|
||||||
|
|
||||||
2003-04-17 Jeff Johnston <jjohnstn@redhat.com>
|
2003-04-17 Jeff Johnston <jjohnstn@redhat.com>
|
||||||
|
|
||||||
* gdb_indent.sh: Recognize td_thrhandle_t, td_event_msg_t,
|
* gdb_indent.sh: Recognize td_thrhandle_t, td_event_msg_t,
|
||||||
|
|
|
@ -54,7 +54,7 @@ static struct target_ops thread_db_ops;
|
||||||
static struct target_ops *target_beneath;
|
static struct target_ops *target_beneath;
|
||||||
|
|
||||||
/* Pointer to the next function on the objfile event chain. */
|
/* Pointer to the next function on the objfile event chain. */
|
||||||
static void (*target_new_objfile_chain) (struct objfile *objfile);
|
static void (*target_new_objfile_chain) (struct objfile * objfile);
|
||||||
|
|
||||||
/* Non-zero if we're using this module's target vector. */
|
/* Non-zero if we're using this module's target vector. */
|
||||||
static int using_thread_db;
|
static int using_thread_db;
|
||||||
|
@ -80,15 +80,16 @@ static td_thragent_t *thread_agent;
|
||||||
|
|
||||||
static td_err_e (*td_init_p) (void);
|
static td_err_e (*td_init_p) (void);
|
||||||
|
|
||||||
static td_err_e (*td_ta_new_p) (struct ps_prochandle *ps, td_thragent_t **ta);
|
static td_err_e (*td_ta_new_p) (struct ps_prochandle * ps,
|
||||||
|
td_thragent_t **ta);
|
||||||
static td_err_e (*td_ta_map_id2thr_p) (const td_thragent_t *ta, thread_t pt,
|
static td_err_e (*td_ta_map_id2thr_p) (const td_thragent_t *ta, thread_t pt,
|
||||||
td_thrhandle_t *__th);
|
td_thrhandle_t *__th);
|
||||||
static td_err_e (*td_ta_map_lwp2thr_p) (const td_thragent_t *ta, lwpid_t lwpid,
|
static td_err_e (*td_ta_map_lwp2thr_p) (const td_thragent_t *ta,
|
||||||
td_thrhandle_t *th);
|
lwpid_t lwpid, td_thrhandle_t *th);
|
||||||
static td_err_e (*td_ta_thr_iter_p) (const td_thragent_t *ta,
|
static td_err_e (*td_ta_thr_iter_p) (const td_thragent_t *ta,
|
||||||
td_thr_iter_f *callback,
|
td_thr_iter_f *callback, void *cbdata_p,
|
||||||
void *cbdata_p, td_thr_state_e state,
|
td_thr_state_e state, int ti_pri,
|
||||||
int ti_pri, sigset_t *ti_sigmask_p,
|
sigset_t *ti_sigmask_p,
|
||||||
unsigned int ti_user_flags);
|
unsigned int ti_user_flags);
|
||||||
static td_err_e (*td_ta_event_addr_p) (const td_thragent_t *ta,
|
static td_err_e (*td_ta_event_addr_p) (const td_thragent_t *ta,
|
||||||
td_event_e event, td_notify_t *ptr);
|
td_event_e event, td_notify_t *ptr);
|
||||||
|
@ -108,12 +109,12 @@ static td_err_e (*td_thr_setfpregs_p) (const td_thrhandle_t *th,
|
||||||
const gdb_prfpregset_t *fpregs);
|
const gdb_prfpregset_t *fpregs);
|
||||||
static td_err_e (*td_thr_setgregs_p) (const td_thrhandle_t *th,
|
static td_err_e (*td_thr_setgregs_p) (const td_thrhandle_t *th,
|
||||||
prgregset_t gregs);
|
prgregset_t gregs);
|
||||||
static td_err_e (*td_thr_event_enable_p) (const td_thrhandle_t *th, int event);
|
static td_err_e (*td_thr_event_enable_p) (const td_thrhandle_t *th,
|
||||||
|
int event);
|
||||||
|
|
||||||
static td_err_e (*td_thr_tls_get_addr_p) (const td_thrhandle_t *th,
|
static td_err_e (*td_thr_tls_get_addr_p) (const td_thrhandle_t *th,
|
||||||
void *map_address,
|
void *map_address,
|
||||||
size_t offset,
|
size_t offset, void **address);
|
||||||
void **address);
|
|
||||||
|
|
||||||
/* Location of the thread creation event breakpoint. The code at this
|
/* Location of the thread creation event breakpoint. The code at this
|
||||||
location in the child process will be called by the pthread library
|
location in the child process will be called by the pthread library
|
||||||
|
@ -150,8 +151,8 @@ static void attach_thread (ptid_t ptid, const td_thrhandle_t *th_p,
|
||||||
struct private_thread_info
|
struct private_thread_info
|
||||||
{
|
{
|
||||||
/* Cached thread state. */
|
/* Cached thread state. */
|
||||||
unsigned int th_valid : 1;
|
unsigned int th_valid:1;
|
||||||
unsigned int ti_valid : 1;
|
unsigned int ti_valid:1;
|
||||||
|
|
||||||
td_thrhandle_t th;
|
td_thrhandle_t th;
|
||||||
td_thrinfo_t ti;
|
td_thrinfo_t ti;
|
||||||
|
@ -297,7 +298,8 @@ thread_db_map_id2thr (struct thread_info *thread_info, int fatal)
|
||||||
{
|
{
|
||||||
if (fatal)
|
if (fatal)
|
||||||
error ("Cannot find thread %ld: %s",
|
error ("Cannot find thread %ld: %s",
|
||||||
(long) GET_THREAD (thread_info->ptid), thread_db_err_str (err));
|
(long) GET_THREAD (thread_info->ptid),
|
||||||
|
thread_db_err_str (err));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
thread_info->private->th_valid = 1;
|
thread_info->private->th_valid = 1;
|
||||||
|
@ -311,10 +313,11 @@ thread_db_get_info (struct thread_info *thread_info)
|
||||||
if (thread_info->private->ti_valid)
|
if (thread_info->private->ti_valid)
|
||||||
return &thread_info->private->ti;
|
return &thread_info->private->ti;
|
||||||
|
|
||||||
if (! thread_info->private->th_valid)
|
if (!thread_info->private->th_valid)
|
||||||
thread_db_map_id2thr (thread_info, 1);
|
thread_db_map_id2thr (thread_info, 1);
|
||||||
|
|
||||||
err = td_thr_get_info_p (&thread_info->private->th, &thread_info->private->ti);
|
err =
|
||||||
|
td_thr_get_info_p (&thread_info->private->th, &thread_info->private->ti);
|
||||||
if (err != TD_OK)
|
if (err != TD_OK)
|
||||||
error ("thread_db_get_info: cannot get thread info: %s",
|
error ("thread_db_get_info: cannot get thread info: %s",
|
||||||
thread_db_err_str (err));
|
thread_db_err_str (err));
|
||||||
|
@ -653,7 +656,7 @@ thread_db_new_objfile (struct objfile *objfile)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
quit:
|
quit:
|
||||||
if (target_new_objfile_chain)
|
if (target_new_objfile_chain)
|
||||||
target_new_objfile_chain (objfile);
|
target_new_objfile_chain (objfile);
|
||||||
}
|
}
|
||||||
|
@ -704,7 +707,7 @@ thread_db_attach (char *args, int from_tty)
|
||||||
|
|
||||||
/* ...and perform the remaining initialization steps. */
|
/* ...and perform the remaining initialization steps. */
|
||||||
enable_thread_event_reporting ();
|
enable_thread_event_reporting ();
|
||||||
thread_db_find_new_threads();
|
thread_db_find_new_threads ();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -864,8 +867,7 @@ thread_db_wait (ptid_t ptid, struct target_waitstatus *ourstatus)
|
||||||
|
|
||||||
static int
|
static int
|
||||||
thread_db_xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int write,
|
thread_db_xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int write,
|
||||||
struct mem_attrib *attrib,
|
struct mem_attrib *attrib, struct target_ops *target)
|
||||||
struct target_ops *target)
|
|
||||||
{
|
{
|
||||||
struct cleanup *old_chain = save_inferior_ptid ();
|
struct cleanup *old_chain = save_inferior_ptid ();
|
||||||
int xfer;
|
int xfer;
|
||||||
|
@ -880,7 +882,9 @@ thread_db_xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int write,
|
||||||
inferior_ptid = lwp_from_thread (inferior_ptid);
|
inferior_ptid = lwp_from_thread (inferior_ptid);
|
||||||
}
|
}
|
||||||
|
|
||||||
xfer = target_beneath->to_xfer_memory (memaddr, myaddr, len, write, attrib, target);
|
xfer =
|
||||||
|
target_beneath->to_xfer_memory (memaddr, myaddr, len, write, attrib,
|
||||||
|
target);
|
||||||
|
|
||||||
do_cleanups (old_chain);
|
do_cleanups (old_chain);
|
||||||
return xfer;
|
return xfer;
|
||||||
|
@ -1021,16 +1025,18 @@ thread_db_thread_alive (ptid_t ptid)
|
||||||
thread_info = find_thread_pid (ptid);
|
thread_info = find_thread_pid (ptid);
|
||||||
|
|
||||||
thread_db_map_id2thr (thread_info, 0);
|
thread_db_map_id2thr (thread_info, 0);
|
||||||
if (! thread_info->private->th_valid)
|
if (!thread_info->private->th_valid)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err = td_thr_validate_p (&thread_info->private->th);
|
err = td_thr_validate_p (&thread_info->private->th);
|
||||||
if (err != TD_OK)
|
if (err != TD_OK)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (! thread_info->private->ti_valid)
|
if (!thread_info->private->ti_valid)
|
||||||
{
|
{
|
||||||
err = td_thr_get_info_p (&thread_info->private->th, &thread_info->private->ti);
|
err =
|
||||||
|
td_thr_get_info_p (&thread_info->private->th,
|
||||||
|
&thread_info->private->ti);
|
||||||
if (err != TD_OK)
|
if (err != TD_OK)
|
||||||
return 0;
|
return 0;
|
||||||
thread_info->private->ti_valid = 1;
|
thread_info->private->ti_valid = 1;
|
||||||
|
@ -1097,9 +1103,10 @@ thread_db_pid_to_str (ptid_t ptid)
|
||||||
|
|
||||||
thread_info = find_thread_pid (ptid);
|
thread_info = find_thread_pid (ptid);
|
||||||
thread_db_map_id2thr (thread_info, 0);
|
thread_db_map_id2thr (thread_info, 0);
|
||||||
if (! thread_info->private->th_valid)
|
if (!thread_info->private->th_valid)
|
||||||
{
|
{
|
||||||
snprintf (buf, sizeof (buf), "Thread %ld (Missing)", GET_THREAD (ptid));
|
snprintf (buf, sizeof (buf), "Thread %ld (Missing)",
|
||||||
|
GET_THREAD (ptid));
|
||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1113,7 +1120,8 @@ thread_db_pid_to_str (ptid_t ptid)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
snprintf (buf, sizeof (buf), "Thread %ld (%s)",
|
snprintf (buf, sizeof (buf), "Thread %ld (%s)",
|
||||||
(long) ti_p->ti_tid, thread_db_state_str (ti_p->ti_state));
|
(long) ti_p->ti_tid,
|
||||||
|
thread_db_state_str (ti_p->ti_state));
|
||||||
}
|
}
|
||||||
|
|
||||||
return buf;
|
return buf;
|
||||||
|
@ -1141,7 +1149,7 @@ thread_db_get_thread_local_address (ptid_t ptid, struct objfile *objfile,
|
||||||
struct thread_info *thread_info;
|
struct thread_info *thread_info;
|
||||||
|
|
||||||
/* glibc doesn't provide the needed interface. */
|
/* glibc doesn't provide the needed interface. */
|
||||||
if (! td_thr_tls_get_addr_p)
|
if (!td_thr_tls_get_addr_p)
|
||||||
error ("Cannot find thread-local variables in this thread library.");
|
error ("Cannot find thread-local variables in this thread library.");
|
||||||
|
|
||||||
/* Get the address of the link map for this objfile. */
|
/* Get the address of the link map for this objfile. */
|
||||||
|
@ -1195,14 +1203,12 @@ thread_db_get_thread_local_address (ptid_t ptid, struct objfile *objfile,
|
||||||
error ("Cannot find thread-local storage for thread %ld, "
|
error ("Cannot find thread-local storage for thread %ld, "
|
||||||
"shared library %s:\n%s",
|
"shared library %s:\n%s",
|
||||||
(long) GET_THREAD (ptid),
|
(long) GET_THREAD (ptid),
|
||||||
objfile->name,
|
objfile->name, thread_db_err_str (err));
|
||||||
thread_db_err_str (err));
|
|
||||||
else
|
else
|
||||||
error ("Cannot find thread-local storage for thread %ld, "
|
error ("Cannot find thread-local storage for thread %ld, "
|
||||||
"executable file %s:\n%s",
|
"executable file %s:\n%s",
|
||||||
(long) GET_THREAD (ptid),
|
(long) GET_THREAD (ptid),
|
||||||
objfile->name,
|
objfile->name, thread_db_err_str (err));
|
||||||
thread_db_err_str (err));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Cast assuming host == target. Joy. */
|
/* Cast assuming host == target. Joy. */
|
||||||
|
@ -1210,7 +1216,8 @@ thread_db_get_thread_local_address (ptid_t ptid, struct objfile *objfile,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (target_beneath->to_get_thread_local_address)
|
if (target_beneath->to_get_thread_local_address)
|
||||||
return target_beneath->to_get_thread_local_address (ptid, objfile, offset);
|
return target_beneath->to_get_thread_local_address (ptid, objfile,
|
||||||
|
offset);
|
||||||
|
|
||||||
error ("Cannot find thread-local values on this target.");
|
error ("Cannot find thread-local values on this target.");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue