WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] gdbserver-xen x86_64 paravirt guest debugging

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] gdbserver-xen x86_64 paravirt guest debugging
From: Ryan Harper <ryanh@xxxxxxxxxx>
Date: Wed, 19 Apr 2006 17:09:51 -0500
Delivery-date: Wed, 19 Apr 2006 15:10:15 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.6+20040907i
I've attempted to debug live x86_64 domU domains with little success.
gdbserver-xen segfaults and I've starting running gdb on gdbserver-xen
to see where things are going south.

I kick off the server under gdb, and then run gdb client and remote
attach.  This appears to succeed, and gives me:

[New Thread 0]
[Switching to Thread 0]
0xffffffff8014e258 in softlockup_tick (regs=0xffff880026c6fcd8) at
kernel/softlockup.c:50
50              unsigned long timestamp = per_cpu(timestamp, this_cpu);

But when I ask for a backtrace:

(gdb) bt
#0  0xffffffff8014e258 in softlockup_tick (regs=0xffff880026c6fcd8) at
kernel/softlockup.c:50
Ignoring packet error, continuing...
Reply contains invalid hex digit 116


On the other side (gdbserver-xen) I see:

(gdb) run
The program being debugged has been started already.
Start it from the beginning? (y or n) y

Starting program: 
/home/rharper/work/openhype/xen/unstable/hg/d/tools/debugger/gdb/gdb-6.2.1-linux-x86_64-xen/gdb/gdbserver/gdbserver-xen
 127.0.0.1:9999 --attach 1
domain currently paused
Attached; pid = 1
Listening on port 9999
Remote debugging from host 127.0.0.1

Program received signal SIGSEGV, Segmentation fault.
0x00002b2611bf410a in map_domain_va_64 (xc_handle=7, cpu=0, 
guest_va=0xffffffff80364ed0,
    perm=1) at xc_ptrace.c:295
295         l3p = page_array[l3p];

Some inspection:

(gdb) p l3p
$4 = 796261
(gdb) p nr_pages
$5 = 196608

page_array only has 196k entries AFAICT, so this seems problematic.

Anyone have x86_64 paravirt guest debugging working on latest unstable?

-- 
Ryan Harper
Software Engineer; Linux Technology Center
IBM Corp., Austin, Tx
(512) 838-9253   T/L: 678-9253
ryanh@xxxxxxxxxx

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>