[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] Catch crashing domains with GDB
- To: Ian Pratt <m+Ian.Pratt@xxxxxxxxxxxx>
- From: Kip Macy <kip.macy@xxxxxxxxx>
- Date: Wed, 16 Nov 2005 09:23:11 -0800
- Cc: Simon Kagstrom <simon.kagstrom@xxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx
- Delivery-date: Wed, 16 Nov 2005 17:23:56 +0000
- Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; b=b3znwm/K5vHhgcxyD8pPRcLD6ZZssY8dIiyHHMHwZ+5zXo11ey6PRdmWuwm+8S01vbw2g5zi6WLj+lzPk+NuLNupdu1p/iauZwS9lq47DQ2XwkhEKN6ZJeL117S7vnMJm0FC4X8/wKD/7XJ+35kiIIke44ju6PHkWWL2pBFJRwQ=
- List-id: Xen developer discussion <xen-devel.lists.xensource.com>
On 11/16/05, Ian Pratt <m+Ian.Pratt@xxxxxxxxxxxx> wrote:
> > " should keep the domain hanging around -- I'd
> > imagine you'd be able to get gdb to give you a backtrace from there.
> Ah, I see. However, I tried adding that to the domain config,
> and the crashed domain is preserved:
> [ska@cb mini-os]$ sudo xm list
Mem(MiB) VCPUs State Time(s)
0 64 1
32 1 --p-c- 0.1
> and I can also attach the gdbserver to the domain (with gdbserver-xen
> localhost:9999 --attach 56), but when I try to attach to the
> gdbserver with GDB I only get
> (gdb) target remote localhost:9999
> Remote debugging using localhost:9999
> Couldn't establish connection to remote target
> Remote communication error: Connection reset by peer.
> and the gdbserver then exits with
> Remote debugging from host 127.0.0.1
> Child exited with status 0
> GDBserver exiting
> . Debugging works fine if I attach with the domain paused on
> startup. I've tried both gdb 6.2.1 and Debian Sarge's 6.3
> version and both exhibit the same behaviour.
This sounds like gdbserver getting confused about the crashed domain.
Perhaps Kip can suggest a fix...
There are 2 possibilities, either one of the hypercalls used to query
the state of domain is returning information that gdbserver doesn't
understand / considers invalid or you've run off your stack. I wouldn't
expect it to handle the latter with so little grace - but I haven't
dealt with that condition in a long time.
Could you please try calling the shutdown/crash hypercall from some
point where you are in a known good state to try and see if it works
there? That would determine whether or not what you're seeing is an
artifact of how the domain crashed. If that fails then I can reproduce
it here and check in a fix when I submit my patch for SMP support.
Xen-devel mailing list