xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Mukesh Rathor <mukesh.rathor@Oracle.Com>
To: "Xen-devel@lists.xensource.com" <Xen-devel@lists.xensource.com>,
	Bruce Edge <bruce.edge@gmail.com>,
	Jeremy Fitzhardinge <jeremy@goop.org>
Subject: [PATCH]: gdbsx: update README and remove space in q packet
Date: Wed, 14 Jul 2010 19:36:26 -0700	[thread overview]
Message-ID: <20100714193626.57259db1@mantra.us.oracle.com> (raw)

[-- 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

             reply	other threads:[~2010-07-15  2:36 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-15  2:36 Mukesh Rathor [this message]
2010-07-15 16:40 ` [PATCH]: gdbsx: update README and remove space in q packet Jeremy Fitzhardinge
2010-07-15 17:34 ` Bruce Edge

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=20100714193626.57259db1@mantra.us.oracle.com \
    --to=mukesh.rathor@oracle.com \
    --cc=Xen-devel@lists.xensource.com \
    --cc=bruce.edge@gmail.com \
    --cc=jeremy@goop.org \
    /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;
as well as URLs for NNTP newsgroup(s).