Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Bart Veer <bartv@ecoscentric.com>
To: "Doug Evans" <dje@google.com>
Cc: stan@codesourcery.com, gdb-patches@sourceware.org
Subject: Re: add file I/O support when debugging an embedded target via jtag
Date: Thu, 25 Sep 2008 20:27:00 -0000	[thread overview]
Message-ID: <pnabdwrmyx.fsf@delenn.bartv.net> (raw)
In-Reply-To: <e394668d0809251004s4dbac963n3e8baa8c521bd8bf@mail.gmail.com> 	(dje@google.com)

>>>>> "Doug" == Doug Evans <dje@google.com> writes:

    >> >> >>> Following on from
    >> >> >>> http://sourceware.org/ml/gdb-patches/2008-08/msg00315.html,
    >> >> >>> I have not heard anything about the code in the last two
    >> >> >>> weeks. Do you know if anybody is looking at it? Also, if
    >> >> >>> there is a likelihood that the patch will be accepted
    >> >> >>> then I should probably get started on the assignment
    >> >> >>> paperwork.

    <snip>
    
    Doug> My off-the-cuff thought is to see if this is something that
    Doug> could be handled from Python.
    >> 
    >> At a high-level you are correct: when a breakpoint is hit, call
    >> into the existing file I/O code and then automatically resume
    >> the target. However a usable implementation imposes some
    >> additional requirements. There should be no visible output
    >> every time some file I/O is requested, so no messages that the
    >> target has halted or that there has been a thread switch. The
    >> overheads must be kept down as much as possible, so no
    >> additional register fetching, no extra memory writes to unset
    >> and reset breakpoints, etc. I don't think that is achievable if
    >> you try to do the work at the command or scripting level.

    Doug> There are indeed issues to be resolved, but I'd like to
    Doug> think these things are achievable. We can provide lots more
    Doug> functionality this way, not just file i/o for jtag targets
    Doug> (and such).

    >> I have not been following the Python work, but as far as I know
    >> it does not allow scripts to operate at the target vector
    >> level. That could be useful for some things, for example it
    >> should make it possible to add thread support for different
    >> embedded OS'es by writing a script instead of adding a new
    >> module to gdb. I suspect it will be some time before anything
    >> like that is possible.

    Doug> I shouldn't be that hard to let Python work at this level,
    Doug> and AIUI such things are not precluded.

Although I have no doubt that a Python interface at the target vector
level is possible, figuring out what such an interface should look
like requires a far greater understanding of the gdb internals than I
possess. I am pretty sure it would also involve much bigger changes to
the internals than a one-line addition to the stratum enum. I really
don't want to see the h/w debug I/O functionality to be delayed for a
long time, possibly years, until all the required infrastructure is in
place for a reimplementation in Python.

Bart


  reply	other threads:[~2008-09-25 20:27 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-12 16:34 Bart Veer
2008-08-12 19:08 ` Eli Zaretskii
2008-08-31 11:42   ` Bart Veer
2008-08-31 14:36     ` Stan Shebs
2008-08-31 15:39       ` Bart Veer
2008-09-23 10:15         ` Bart Veer
2008-09-23 12:03           ` Doug Evans
2008-09-24 21:21             ` Bart Veer
2008-09-25 17:05               ` Doug Evans
2008-09-25 20:27                 ` Bart Veer [this message]
2008-09-25 22:20                   ` Daniel Jacobowitz
2008-10-01 18:39                     ` Bart Veer
2008-10-01 21:10                       ` Daniel Jacobowitz
2008-10-09 17:11                         ` Bart Veer
2008-10-17 11:59                           ` John Dallaway
2008-09-01  3:07     ` Eli Zaretskii

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=pnabdwrmyx.fsf@delenn.bartv.net \
    --to=bartv@ecoscentric.com \
    --cc=dje@google.com \
    --cc=gdb-patches@sourceware.org \
    --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