From f73023dd06cb038bdb212d05064b03e38fd7d9db Mon Sep 17 00:00:00 2001 From: Yao Qi Date: Mon, 16 Dec 2013 21:13:36 +0800 Subject: [PATCH] Revert previous tweaks As we migrate to the new to_xfer_partial interface, some of previous tweaks become unnecessary, we don't have to check traceframe is selected in each target implementation, so this patch below is reverted. [PATCH] Send qXfer:traceframe-info:read when traceframe is selected. https://sourceware.org/ml/gdb-patches/2013-10/msg00752.html Third, to_traceframe_info is only called when traceframe is selected, that means it is only called when target is remote, tfile or ctf, so this patch can be partially reverted, https://sourceware.org/ml/gdb-patches/2013-04/msg00000.html gdb: 2014-02-23 Yao Qi Revert two patches: 2013-10-25 Yao Qi * remote.c (remote_traceframe_info): Return early if traceframe is not selected. 2013-07-19 Yao Qi * target.c (update_current_target): Change the default action of 'to_traceframe_info' from tcomplain to return_zero. * target.h (struct target_ops) : Add more comments. --- gdb/ChangeLog | 16 ++++++++++++++++ gdb/remote.c | 5 ----- gdb/target.h | 17 ++++------------- 3 files changed, 20 insertions(+), 18 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 326909fb5a..3b199ac9b6 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,19 @@ +2014-02-23 Yao Qi + + Revert two patches: + + 2013-10-25 Yao Qi + + * remote.c (remote_traceframe_info): Return early if + traceframe is not selected. + + 2013-07-19 Yao Qi + + * target.c (update_current_target): Change the default action + of 'to_traceframe_info' from tcomplain to return_zero. + * target.h (struct target_ops) : Add more + comments. + 2014-02-23 Yao Qi * valops.c (read_value_memory): Rewrite it. Call diff --git a/gdb/remote.c b/gdb/remote.c index dcf2e503ac..de9dad1c58 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -11058,11 +11058,6 @@ remote_traceframe_info (struct target_ops *self) { char *text; - /* If current traceframe is not selected, don't bother the remote - stub. */ - if (get_traceframe_number () < 0) - return NULL; - text = target_read_stralloc (¤t_target, TARGET_OBJECT_TRACEFRAME_INFO, NULL); if (text != NULL) diff --git a/gdb/target.h b/gdb/target.h index 2cc3c1356c..6cc1337075 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -974,20 +974,11 @@ struct target_ops TARGET_DEFAULT_NORETURN (tcomplain ()); /* Return a traceframe info object describing the current - traceframe's contents. If the target doesn't support - traceframe info, return NULL. If the current traceframe is not - selected (the current traceframe number is -1), the target can - choose to return either NULL or an empty traceframe info. If - NULL is returned, for example in remote target, GDB will read - from the live inferior. If an empty traceframe info is - returned, for example in tfile target, which means the - traceframe info is available, but the requested memory is not - available in it. GDB will try to see if the requested memory - is available in the read-only sections. This method should not - cache data; higher layers take care of caching, invalidating, - and re-fetching when necessary. */ + traceframe's contents. This method should not cache data; + higher layers take care of caching, invalidating, and + re-fetching when necessary. */ struct traceframe_info *(*to_traceframe_info) (struct target_ops *) - TARGET_DEFAULT_RETURN (NULL); + TARGET_DEFAULT_RETURN (tcomplain ()); /* Ask the target to use or not to use agent according to USE. Return 1 successful, 0 otherwise. */