aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/linux-nat.c2
-rw-r--r--gdb/x86-linux-nat.c11
3 files changed, 21 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index be2ed47..38872b1 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,11 @@
+2015-08-18 Pedro Alves <palves@redhat.com>
+
+ * linux-nat.c (linux_nat_always_non_stop_p): If the linux_ops
+ target implements to_always_non_stop_p, call it.
+ * x86-linux-nat.c (x86_linux_always_non_stop_p): New function.
+ (x86_linux_create_target): Install it as to_always_non_stop_p
+ method.
+
2015-08-17 Doug Evans <dje@google.com>
* ui-out.c (default_ui_out_impl): Add comment.
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c
index be7a915..a13fb9e 100644
--- a/gdb/linux-nat.c
+++ b/gdb/linux-nat.c
@@ -4594,6 +4594,8 @@ linux_nat_supports_non_stop (struct target_ops *self)
static int
linux_nat_always_non_stop_p (struct target_ops *self)
{
+ if (linux_ops->to_always_non_stop_p != NULL)
+ return linux_ops->to_always_non_stop_p (linux_ops);
return 1;
}
diff --git a/gdb/x86-linux-nat.c b/gdb/x86-linux-nat.c
index 34a9257..fe52c1f 100644
--- a/gdb/x86-linux-nat.c
+++ b/gdb/x86-linux-nat.c
@@ -357,6 +357,15 @@ x86_linux_get_thread_area (pid_t pid, void *addr, unsigned int *base_addr)
}
+/* to_always_non_stop_p implementation. */
+
+static int
+x86_linux_always_non_stop_p (struct target_ops *self)
+{
+ /* Enabling this breaks the btrace target. */
+ return 0;
+}
+
/* Create an x86 GNU/Linux target. */
struct target_ops *
@@ -389,6 +398,8 @@ x86_linux_create_target (void)
t->to_read_btrace = x86_linux_read_btrace;
t->to_btrace_conf = x86_linux_btrace_conf;
+ t->to_always_non_stop_p = x86_linux_always_non_stop_p;
+
return t;
}