From: "Jakob Engblom" <jakob@virtutech.com>
To: "'Michael Snyder'" <msnyder@vmware.com>,
"'Stan Shebs'" <stan@codesourcery.com>
Cc: <gdb@sourceware.org>
Subject: RE: Tracepoint enhancements
Date: Mon, 03 Nov 2008 06:38:00 -0000 [thread overview]
Message-ID: <003e01c93d7e$94eb1de0$bec159a0$@com> (raw)
In-Reply-To: <490B6CEF.2000003@vmware.com>
> > One possible change to consider is to merge tracepoint setting into
> > breakpoint setting. Among other benefits would be a single numbering
> > scheme for breakpoints and tracepoints, plus we will be able to share
> > some machinery and make things more consistent.
>
> Just my personal opinion, I would find that confusing.
>
> It seems useful to maintain a fairly sharp distinction
> between breakpoints and tracepoints, since their behavior
> is entirely different from both the implementation and the
> user's point of view.
>
> But I would not plan to make a fuss about it...
In a simulator, they might be the same. In both cases, the main mechanism is
noting that you reach a certain place in the code or read or write som memory
position. Whether you then note it down and continue or stop execution or call
some callback does not matter. So they can be very much the same.
> > A bigger change would be to introduce a general notion of execution
> > history, which could subsume fork checkpoints and trace snapshots, maybe
> > tie into some versions of reverse debugging as well.
>
> That could be interesting to talk about.
>
> Right now, I think checkpoints are only implemented for native
> linux, and maybe a few other (native) targets. Whereas tracepoints
> are traditionally associated with remote targets.
>
> I am very interested in defining a remote protocol that could
> tell the remote target "take a checkpoint" or "restore to a
> checkpoint". Ideally it should be entirely agnostic about how
> a checkpoint is actually implemented.
If by checkpoint you mean "some point inside the execution of a single program"
this is also a nice fit with simulators (and I presume VmWare as well, if we use
its snapshotting ability for this). I think this is a very good idea that works
very well with a smart remote target.
> I talked about this with somebody once (can't remember who),
> but I remember the discussion got hung up over whether gdb or
> the target should actually manage the list of checkpoint IDs.
>
> My thinking is that gdb will probably want to number them with
> simple ordinal numbers (1, 2, 3...) like breakpoints, but that
> the target may have a different type of ID in mind (such as
> process/fork IDs), and somebody will have to maintain a mapping.
The target might have its own interface for looking at such checkpoints... so I
think passing name strings make the most sense. In Simics, for example,
bookmarks as we call them have names and that is how we work with them.
> Not very different from threads, actually...
I think it is. It is a snapshot of the system state that you can back to, not
really a thread. Only if you consider the odd Linux implementating with fork et
al are they the same.
Best regards,
/jakob
_______________________________________________________
Jakob Engblom, PhD, Technical Marketing Manager
Virtutech Direct: +46 8 690 07 47
Drottningholmsvägen 14 Mobile: +46 709 242 646
11243 Stockholm Web: www.virtutech.com
Sweden
________________________________________________________
next prev parent reply other threads:[~2008-11-03 6:38 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-31 20:46 Stan Shebs
[not found] ` <490B6CEF.2000003@vmware.com>
2008-11-01 8:40 ` Vladimir Prus
2008-11-03 18:20 ` Michael Snyder
2008-11-04 21:17 ` Stan Shebs
2008-11-05 7:14 ` Vladimir Prus
[not found] ` <Pine.LNX.4.58.0811060523150.8468@vlab.hofr.at>
2008-11-06 18:19 ` Vladimir Prus
2008-11-03 6:38 ` Jakob Engblom [this message]
2008-11-03 18:27 ` Michael Snyder
2008-11-03 18:53 ` Jakob Engblom
2008-11-03 19:23 ` Michael Snyder
2008-11-04 14:00 ` Jakob Engblom
2008-11-04 21:37 ` Stan Shebs
2008-11-04 21:58 ` Michael Snyder
2008-11-05 9:04 ` Jakob Engblom
2008-11-03 9:12 ` Jeremy Bennett
2008-11-04 21:26 ` 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='003e01c93d7e$94eb1de0$bec159a0$@com' \
--to=jakob@virtutech.com \
--cc=gdb@sourceware.org \
--cc=msnyder@vmware.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