From: Nathan Sidwell <nathan@codesourcery.com>
To: Daniel Jacobowitz <drow@false.org>
Cc: gdb-patches@sources.redhat.com, Michael Snyder <msnyder@redhat.com>
Subject: Re: [PATCH] Some tracepoint fixes
Date: Tue, 08 Mar 2005 10:06:00 -0000 [thread overview]
Message-ID: <422D78F4.9050303@codesourcery.com> (raw)
In-Reply-To: <20050227002309.GA19138@nevyn.them.org>
[-- Attachment #1: Type: text/plain, Size: 1390 bytes --]
Daniel Jacobowitz wrote:
> On Wed, Feb 09, 2005 at 09:19:17AM +0000, Nathan Sidwell wrote:
>
>>In porting gdb to a new architecture, I came across a number of core gdb
>>bugs. Here is the first set of them and addresses the following issues,
>>
>>1) we did not allow 'extended-remote' targets to use tracepoints.
>>
>>2) We could only trace architectures with 64 registers, not 256 like
>>a comment suggested.
>>
>>3) There was an erroneous comment about tracing memory ranges
>>
>>4) If a ^D was entered when entering the 'actions' list, we'd create
>>a NULL action, which would cause a segfault when tracing started.
> Some bits of this are OK, some aren't (and I'd want Michael's opinion
> on them). In particular, the tracepoint remote protocol packets don't
> appear to be documented; so I'm not sure about the strtol change. Your
> change is definitely wrong one way or another, because it depends on
> the size of "long" on the host. You're passing a long* to sscanf where
> it expects an unsigned long*. If we expect a hex-encoded 32-bit
> result, then let's parse it that way explicitly.
ok. I've installed the attached patch, which are the uncontraversial
bits. I'll address the strtol one separately.
nathan
--
Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery LLC
nathan@codesourcery.com :: http://www.planetfall.pwp.blueyonder.co.uk
[-- Attachment #2: tracepoint1a.patch --]
[-- Type: text/plain, Size: 2388 bytes --]
2005-03-08 Nathan Sidwell <nathan@codesourcery.com>
* tracepoint.c (target_is_remote): Allow extended-remote.
(struct collection_list): Allow 256 registers, like the comment
said.
(add_memrange): Fix comment.
(read_actions): Turn EOF into 'end'.
Index: tracepoint.c
===================================================================
RCS file: /cvs/src/src/gdb/tracepoint.c,v
retrieving revision 1.68
diff -c -3 -p -r1.68 tracepoint.c
*** tracepoint.c 2 Feb 2005 00:20:05 -0000 1.68
--- tracepoint.c 8 Feb 2005 11:31:20 -0000
*************** static int
*** 164,170 ****
target_is_remote (void)
{
if (current_target.to_shortname &&
! strcmp (current_target.to_shortname, "remote") == 0)
return 1;
else
return 0;
--- 164,171 ----
target_is_remote (void)
{
if (current_target.to_shortname &&
! (strcmp (current_target.to_shortname, "remote") == 0
! || strcmp (current_target.to_shortname, "extended-remote") == 0))
return 1;
else
return 0;
*************** read_actions (struct tracepoint *t)
*** 860,865 ****
--- 861,869 ----
else
line = gdb_readline (0);
+ if (!line)
+ line = "end";
+
linetype = validate_actionline (&line, t);
if (linetype == BADLINE)
continue; /* already warned -- collect another line */
*************** struct memrange
*** 1074,1080 ****
struct collection_list
{
! unsigned char regs_mask[8]; /* room for up to 256 regs */
long listsize;
long next_memrange;
struct memrange *list;
--- 1078,1084 ----
struct collection_list
{
! unsigned char regs_mask[32]; /* room for up to 256 regs */
long listsize;
long next_memrange;
struct memrange *list;
*************** add_memrange (struct collection_list *me
*** 1171,1177 ****
printf_filtered (",%ld)\n", len);
}
! /* type: 0 == memory, n == basereg */
memranges->list[memranges->next_memrange].type = type;
/* base: addr if memory, offset if reg relative. */
memranges->list[memranges->next_memrange].start = base;
--- 1175,1181 ----
printf_filtered (",%ld)\n", len);
}
! /* type: -1 == memory, n == basereg */
memranges->list[memranges->next_memrange].type = type;
/* base: addr if memory, offset if reg relative. */
memranges->list[memranges->next_memrange].start = base;
prev parent reply other threads:[~2005-03-08 10:06 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-09 11:00 Nathan Sidwell
2005-02-27 1:20 ` Daniel Jacobowitz
2005-03-08 10:06 ` Nathan Sidwell [this message]
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=422D78F4.9050303@codesourcery.com \
--to=nathan@codesourcery.com \
--cc=drow@false.org \
--cc=gdb-patches@sources.redhat.com \
--cc=msnyder@redhat.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