aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>2009-08-23 16:33:50 -0700
committerRoland McGrath <roland@redhat.com>2009-08-23 16:33:50 -0700
commita0e25a886a9128b280b4c05bc9c6dd12377ea868 (patch)
treedc9fcabeabbeabe6c90dc121a19b65894074a340
parent8a7cea019947a68e641e9201813fe01ba35cfd1a (diff)
downloadglibc-a0e25a886a9128b280b4c05bc9c6dd12377ea868.tar
glibc-a0e25a886a9128b280b4c05bc9c6dd12377ea868.tar.gz
glibc-a0e25a886a9128b280b4c05bc9c6dd12377ea868.tar.bz2
glibc-a0e25a886a9128b280b4c05bc9c6dd12377ea868.zip
Fix td_ta_map_lwp2thr logging and early sanity check.
-rw-r--r--nptl_db/ChangeLog7
-rw-r--r--nptl_db/td_ta_map_lwp2thr.c14
2 files changed, 14 insertions, 7 deletions
diff --git a/nptl_db/ChangeLog b/nptl_db/ChangeLog
index 1ade1968a7..f79fc18e4b 100644
--- a/nptl_db/ChangeLog
+++ b/nptl_db/ChangeLog
@@ -1,3 +1,10 @@
+2009-08-23 Roland McGrath <roland@redhat.com>
+
+ * td_ta_map_lwp2thr.c (__td_ta_lookup_th_unique): Move ta_ok check
+ and LOG call back to ...
+ (td_ta_map_lwp2thr): ... here.
+ Reported by Maciej W. Rozycki <macro@codesourcery.com>.
+
2009-05-25 Aurelien Jarno <aurelien@aurel32.net>
[BZ #10200]
diff --git a/nptl_db/td_ta_map_lwp2thr.c b/nptl_db/td_ta_map_lwp2thr.c
index 78cfcab769..4835f31f94 100644
--- a/nptl_db/td_ta_map_lwp2thr.c
+++ b/nptl_db/td_ta_map_lwp2thr.c
@@ -1,5 +1,5 @@
/* Which thread is running on an LWP?
- Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc.
+ Copyright (C) 2003,2004,2007,2009 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -33,12 +33,6 @@ __td_ta_lookup_th_unique (const td_thragent_t *ta_arg,
prgregset_t regs;
psaddr_t addr;
- LOG ("td_ta_map_lwp2thr");
-
- /* Test whether the TA parameter is ok. */
- if (! ta_ok (ta))
- return TD_BADTA;
-
if (ta->ta_howto == ta_howto_unknown)
{
/* We need to read in from the inferior the instructions what to do. */
@@ -181,6 +175,12 @@ td_ta_map_lwp2thr (const td_thragent_t *ta_arg,
{
td_thragent_t *const ta = (td_thragent_t *) ta_arg;
+ LOG ("td_ta_map_lwp2thr");
+
+ /* Test whether the TA parameter is ok. */
+ if (! ta_ok (ta))
+ return TD_BADTA;
+
/* We cannot rely on thread registers and such information at all
before __pthread_initialize_minimal has gotten far enough. They
sometimes contain garbage that would confuse us, left by the kernel