* [PATCH]: gdbsx: update README and remove space in q packet
@ 2010-07-15 2:36 Mukesh Rathor
2010-07-15 16:40 ` Jeremy Fitzhardinge
2010-07-15 17:34 ` Bruce Edge
0 siblings, 2 replies; 3+ messages in thread
From: Mukesh Rathor @ 2010-07-15 2:36 UTC (permalink / raw)
To: Xen-devel@lists.xensource.com, Bruce Edge, Jeremy Fitzhardinge
[-- Attachment #1: Type: text/plain, Size: 2256 bytes --]
Newer version of gdb, version 7*, seems to have bug where it is not
parsing thread list from gdbsx properly. Getting rid of the space in
thread list works around it. It's ok with older gdb also.
Signed-off-by: Mukesh Rathor <mukesh.rathor@oracle.com>
diff -r d867eb643fe4 tools/debugger/gdbsx/README
--- a/tools/debugger/gdbsx/README Tue Jul 13 18:17:28 2010 +0100
+++ b/tools/debugger/gdbsx/README Wed Jul 14 19:05:37 2010 -0700
@@ -26,7 +26,7 @@
bash> gdb ./vmlinux (exact matching vmlinux of guest kernel)
(gdb) target remote dom0:9999
- - Additionally, to debug loadable kernel modules, please do following:
+ - Additionally, to debug 32bit loadable kernel modules, please do following:
(gdb) p init_mm.pgd[3]
$1 = {pgd = 0x1b874f027}
(gdb) monitor pgd3 0x1b874f027 (Make sure value is in HEX)
diff -r d867eb643fe4 tools/debugger/gdbsx/gx/gx_main.c
--- a/tools/debugger/gdbsx/gx/gx_main.c Tue Jul 13 18:17:28 2010 +0100
+++ b/tools/debugger/gdbsx/gx/gx_main.c Wed Jul 14 19:05:37 2010 -0700
@@ -132,12 +132,12 @@
static void
process_q_request(char *remote_buf)
{
- /* send a list of tids: "m 0,1,2,3l" */
+ /* send a list of tids: "m0,1,2,3l" */
if (strcmp("qfThreadInfo", remote_buf) == 0) {
vcpuid_t vid = 0;
char *p = remote_buf;
- sprintf(p, "m %x", vid); /* puts null char at the end */
+ sprintf(p, "m%x", vid); /* puts null char at the end */
p = p + strlen(p);
for (vid=1; vid <= max_vcpuid; vid++) {
sprintf(p, ",%x", vid);
@@ -146,8 +146,9 @@
sprintf(p, "l"); /* puts null char at the end */
return;
}
+
/* qSymbol works for init_mm, and not init_mm.pgd, hence we can't use
- * it at this time. instead use "monitor" in gdb */
+ * it at this time. instead use "monitor" in gdb */
if (strncmp("qRcmd,", remote_buf, 6) == 0) {
_do_qRcmd_req(remote_buf);
return;
@@ -155,8 +156,7 @@
/* TBD : qThreadExtraInfo : send extra banner info */
- /* nothing else supported right now */
- remote_buf[0] = '\0';
+ remote_buf[0] = '\0'; /* nothing else supported for now */
return;
}
[-- Attachment #2: diff.out --]
[-- Type: application/octet-stream, Size: 2003 bytes --]
diff -r d867eb643fe4 tools/debugger/gdbsx/README
--- a/tools/debugger/gdbsx/README Tue Jul 13 18:17:28 2010 +0100
+++ b/tools/debugger/gdbsx/README Wed Jul 14 19:05:37 2010 -0700
@@ -26,7 +26,7 @@
bash> gdb ./vmlinux (exact matching vmlinux of guest kernel)
(gdb) target remote dom0:9999
- - Additionally, to debug loadable kernel modules, please do following:
+ - Additionally, to debug 32bit loadable kernel modules, please do following:
(gdb) p init_mm.pgd[3]
$1 = {pgd = 0x1b874f027}
(gdb) monitor pgd3 0x1b874f027 (Make sure value is in HEX)
diff -r d867eb643fe4 tools/debugger/gdbsx/gx/gx_main.c
--- a/tools/debugger/gdbsx/gx/gx_main.c Tue Jul 13 18:17:28 2010 +0100
+++ b/tools/debugger/gdbsx/gx/gx_main.c Wed Jul 14 19:05:37 2010 -0700
@@ -132,12 +132,12 @@
static void
process_q_request(char *remote_buf)
{
- /* send a list of tids: "m 0,1,2,3l" */
+ /* send a list of tids: "m0,1,2,3l" */
if (strcmp("qfThreadInfo", remote_buf) == 0) {
vcpuid_t vid = 0;
char *p = remote_buf;
- sprintf(p, "m %x", vid); /* puts null char at the end */
+ sprintf(p, "m%x", vid); /* puts null char at the end */
p = p + strlen(p);
for (vid=1; vid <= max_vcpuid; vid++) {
sprintf(p, ",%x", vid);
@@ -146,8 +146,9 @@
sprintf(p, "l"); /* puts null char at the end */
return;
}
+
/* qSymbol works for init_mm, and not init_mm.pgd, hence we can't use
- * it at this time. instead use "monitor" in gdb */
+ * it at this time. instead use "monitor" in gdb */
if (strncmp("qRcmd,", remote_buf, 6) == 0) {
_do_qRcmd_req(remote_buf);
return;
@@ -155,8 +156,7 @@
/* TBD : qThreadExtraInfo : send extra banner info */
- /* nothing else supported right now */
- remote_buf[0] = '\0';
+ remote_buf[0] = '\0'; /* nothing else supported for now */
return;
}
[-- Attachment #3: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH]: gdbsx: update README and remove space in q packet
2010-07-15 2:36 [PATCH]: gdbsx: update README and remove space in q packet Mukesh Rathor
@ 2010-07-15 16:40 ` Jeremy Fitzhardinge
2010-07-15 17:34 ` Bruce Edge
1 sibling, 0 replies; 3+ messages in thread
From: Jeremy Fitzhardinge @ 2010-07-15 16:40 UTC (permalink / raw)
To: Mukesh Rathor; +Cc: Xen-devel@lists.xensource.com, Bruce Edge
On 07/14/2010 07:36 PM, Mukesh Rathor wrote:
> Newer version of gdb, version 7*, seems to have bug where it is not
> parsing thread list from gdbsx properly. Getting rid of the space in
> thread list works around it. It's ok with older gdb also.
>
Thanks, that fixes gdbsx for me.
Yay!
J
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH]: gdbsx: update README and remove space in q packet
2010-07-15 2:36 [PATCH]: gdbsx: update README and remove space in q packet Mukesh Rathor
2010-07-15 16:40 ` Jeremy Fitzhardinge
@ 2010-07-15 17:34 ` Bruce Edge
1 sibling, 0 replies; 3+ messages in thread
From: Bruce Edge @ 2010-07-15 17:34 UTC (permalink / raw)
To: Mukesh Rathor; +Cc: Jeremy Fitzhardinge, Xen-devel@lists.xensource.com
[-- Attachment #1.1: Type: text/plain, Size: 2627 bytes --]
On Wed, Jul 14, 2010 at 7:36 PM, Mukesh Rathor <mukesh.rathor@oracle.com>wrote:
> Newer version of gdb, version 7*, seems to have bug where it is not
> parsing thread list from gdbsx properly. Getting rid of the space in
> thread list works around it. It's ok with older gdb also.
>
> Signed-off-by: Mukesh Rathor <mukesh.rathor@oracle.com>
>
> diff -r d867eb643fe4 tools/debugger/gdbsx/README
> --- a/tools/debugger/gdbsx/README Tue Jul 13 18:17:28 2010 +0100
> +++ b/tools/debugger/gdbsx/README Wed Jul 14 19:05:37 2010 -0700
> @@ -26,7 +26,7 @@
> bash> gdb ./vmlinux (exact matching vmlinux of guest
> kernel)
> (gdb) target remote dom0:9999
>
> - - Additionally, to debug loadable kernel modules, please do following:
>
Does this 32 bit clarification imply there's no mechanism to debug modules
on a 64 bit domU ?
Or or there another mechanism to obtain the same info for 64 bit clients?
Thanks
-Bruce
> + - Additionally, to debug 32bit loadable kernel modules, please do
> following:
> (gdb) p init_mm.pgd[3]
> $1 = {pgd = 0x1b874f027}
> (gdb) monitor pgd3 0x1b874f027 (Make sure value is in HEX)
> diff -r d867eb643fe4 tools/debugger/gdbsx/gx/gx_main.c
> --- a/tools/debugger/gdbsx/gx/gx_main.c Tue Jul 13 18:17:28 2010 +0100
> +++ b/tools/debugger/gdbsx/gx/gx_main.c Wed Jul 14 19:05:37 2010 -0700
> @@ -132,12 +132,12 @@
> static void
> process_q_request(char *remote_buf)
> {
> - /* send a list of tids: "m 0,1,2,3l" */
> + /* send a list of tids: "m0,1,2,3l" */
> if (strcmp("qfThreadInfo", remote_buf) == 0) {
> vcpuid_t vid = 0;
> char *p = remote_buf;
>
> - sprintf(p, "m %x", vid); /* puts null char at the end */
> + sprintf(p, "m%x", vid); /* puts null char at the end */
> p = p + strlen(p);
> for (vid=1; vid <= max_vcpuid; vid++) {
> sprintf(p, ",%x", vid);
> @@ -146,8 +146,9 @@
> sprintf(p, "l"); /* puts null char at the end */
> return;
> }
> +
> /* qSymbol works for init_mm, and not init_mm.pgd, hence we can't use
> - * it at this time. instead use "monitor" in gdb */
> + * it at this time. instead use "monitor" in gdb */
> if (strncmp("qRcmd,", remote_buf, 6) == 0) {
> _do_qRcmd_req(remote_buf);
> return;
> @@ -155,8 +156,7 @@
>
> /* TBD : qThreadExtraInfo : send extra banner info */
>
> - /* nothing else supported right now */
> - remote_buf[0] = '\0';
> + remote_buf[0] = '\0'; /* nothing else supported for now
> */
>
> return;
> }
>
[-- Attachment #1.2: Type: text/html, Size: 3444 bytes --]
[-- Attachment #2: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2010-07-15 17:34 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-15 2:36 [PATCH]: gdbsx: update README and remove space in q packet Mukesh Rathor
2010-07-15 16:40 ` Jeremy Fitzhardinge
2010-07-15 17:34 ` Bruce Edge
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).