Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Pedro Alves <pedro@codesourcery.com>
To: gdb-patches@sourceware.org,  Marc Khouzam <marc.khouzam@ericsson.com>
Cc: Stan Shebs <stan@codesourcery.com>
Subject: Re: [PATCH] No resuming while tfinding
Date: Wed, 17 Mar 2010 15:22:00 -0000	[thread overview]
Message-ID: <201003171521.59901.pedro@codesourcery.com> (raw)
In-Reply-To: <4BA0377C.1040000@codesourcery.com>

On Wednesday 17 March 2010 01:59:24, Stan Shebs wrote:
> So I propose that we make an executive decision to disable all the 
> resumption commands while in tfind mode.  Does this make sense to everyone?

I object to not making this change.  :-)  

We should look at tfind mode as sort of a different
target.  It's is kind of similar to debugging a core dump
while still connecting to a live target.  (yay, GDB has
gone multi-target already :-D)  Execution commands aren't allowed
when debugging a core dump either.  At most, some could map some
of those commands to browsing through the traceframes, like
"stepi" (heuristically) following while-stepping traceframes,
but, never to running the live target.  Execution commands
are prohibited when debugging core dumps by having the
core_ops target return false to target_has_execution,
instead of having checks in every command though.  We could
try just installing a remote.c:remote_has_execution callback
that returns false when in tfind mode, but, it would
automatically prohibit e.g., "kill", "attach", "detach", "run",
etc. as well, which is not clear we do want to prohibit those
in tfind mode, and the resulting "The program is not being run."
error looks confusing in that case.  We could always tweak
ERROR_NO_INFERIOR though.

> 2010-03-16 Stan Shebs  <stan@codesourcery.com>
> 
>     * infcall.c: Include tracepoint.h.
>     (call_function_by_hand): Disallow calls in tfind mode.
>     * infcmd.c (ensure_not_tfind_mode): New function.
>     (continue_1): Call it.
>     (step_1) Ditto.
>     (jump_command): Ditto.
>     (signal_command): Ditto.
>     (until_command): Ditto.
>     (finish_command): Ditto.

This misses the "until" command, in breakpoint.c.

> *** infcmd.c    16 Feb 2010 21:18:46 -0000      1.259
> --- infcmd.c    17 Mar 2010 01:34:00 -0000
> ***************
> *** 56,61 ****
> --- 56,62 ----
>   #include "inline-frame.h"
>   
>   extern void disconnect_or_stop_tracing (int from_tty);
> + extern int get_traceframe_number (void);

This is unnecessary, get_traceframe_number is declared in
tracepoint.h.  The disconnect_or_stop_tracing declaration
shown above could use moving there as well...

-- 
Pedro Alves


  parent reply	other threads:[~2010-03-17 15:22 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-17  1:59 Stan Shebs
2010-03-17 13:51 ` Marc Khouzam
2010-03-17 15:19 ` Joel Brobecker
2010-03-17 17:36   ` Michael Snyder
2010-03-17 23:40     ` Stan Shebs
2010-03-17 23:44       ` Pedro Alves
2010-03-17 15:22 ` Pedro Alves [this message]
2010-03-17 17:31   ` Stan Shebs
2010-03-18  0:59   ` Stan Shebs
2010-03-18 12:19     ` Pedro Alves
2010-03-18 13:23       ` Pedro Alves
2010-03-18 16:05 ` Tom Tromey
2010-03-18 17:47   ` Stan Shebs

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201003171521.59901.pedro@codesourcery.com \
    --to=pedro@codesourcery.com \
    --cc=gdb-patches@sourceware.org \
    --cc=marc.khouzam@ericsson.com \
    --cc=stan@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox