aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2013-12-16 14:04:52 +0000
committerPedro Alves <palves@redhat.com>2013-12-16 14:04:52 +0000
commit9a362b9a3291ef43316e1606e2b26fe55ebb187f (patch)
treebdc3121814d955ba59a16f39594bf92ef922594e
parent4bc461905647a55faac8fe5eda16cc9f0266721d (diff)
downloadgdb-9a362b9a3291ef43316e1606e2b26fe55ebb187f.zip
gdb-9a362b9a3291ef43316e1606e2b26fe55ebb187f.tar.gz
gdb-9a362b9a3291ef43316e1606e2b26fe55ebb187f.tar.bz2
PR 16329: remote debugging broken on Solaris.
Like on GNU/Linux (linux-thread-db.c), the Solaris solaris-threads target (handles libthread_db.so) shouldn't be pushed when remote debugging. This uses the same predicate used by linux-thread-db.c. gdb/ 2013-12-16 Pedro Alves <palves@redhat.com> PR 16329 * sol-thread.c (check_for_thread_db): If the target can't run or isn't a core, return without pushing.
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/sol-thread.c4
2 files changed, 10 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b9b37b0..cd954e0 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2013-12-16 Pedro Alves <palves@redhat.com>
+
+ PR 16329
+ * sol-thread.c (check_for_thread_db): If the target can't run or
+ isn't a core, return without pushing.
+
2013-12-15 Joel Brobecker <brobecker@adacore.com>
Revert the following commit:
diff --git a/gdb/sol-thread.c b/gdb/sol-thread.c
index b480b58..3809aec 100644
--- a/gdb/sol-thread.c
+++ b/gdb/sol-thread.c
@@ -578,6 +578,10 @@ check_for_thread_db (void)
td_err_e err;
ptid_t ptid;
+ /* Don't attempt to use thread_db for remote targets. */
+ if (!(target_can_run (&current_target) || core_bfd))
+ return;
+
/* Do nothing if we couldn't load libthread_db.so.1. */
if (p_td_ta_new == NULL)
return;