* Anthony Liguori <aliguori@xxxxxxxxxx> [2006-05-09 15:15]:
> Hollis Blanchard wrote:
> >On Tue, 2006-05-09 at 13:31 +0200, Simon Kagstrom wrote:
> >
> >>I had a problem with the GDB-server crashing on connections in
> >>xen_ptrace.c:map_domain_va(). paging_enabled() should only be checked
> >>for HVM guests, and the patch adds a check for that.
> >>
> >>Signed-off-by: Simon Kagstrom <ska@xxxxxx>
> >>
> >>diff -r 4501d60d6add tools/libxc/xc_ptrace.c
> >>--- a/tools/libxc/xc_ptrace.c Tue May 9 09:57:05 2006
> >>+++ b/tools/libxc/xc_ptrace.c Tue May 9 13:26:14 2006
> >>@@ -374,7 +374,7 @@
> >> if (fetch_regs(xc_handle, cpu, NULL))
> >> return NULL;
> >>
> >>- if (!paging_enabled(&ctxt[cpu])) {
> >>+ if ( (ctxt[cpu].flags & VGCF_HVM_GUEST) &&
> >>!paging_enabled(&ctxt[cpu])) { static void * v;
> >> unsigned long page;
> >>
> >
> >I looked at this a couple weeks ago, and I think the real problem is
> >that the CR registers are never updated in Xen's vcpu structure, and so
> >xc_vcpu_getcontext() doesn't get them either. So Xen should be fixed; we
> >shouldn't add workarounds to userland.
> >
>
> I think that the CR registers are never changed during the life of a PV
> domain. I think all that's needed is for some sane values to be set
> during domain creation and things start working. I believe Ryan had a
> patch that did this?
Well, I only hacked up enough to get things functional. I didn't know
what cr4 should look like so I skipped that check. Here are the two
patches I needed to debug paravirt 64-bit domUs via gdb. I was going to
look into abstracting out the index into the page_array (it is only
needed on domains with shadow paging; non-shadow page tables
already have mfns).
--
Ryan Harper
Software Engineer; Linux Technology Center
IBM Corp., Austin, Tx
(512) 838-9253 T/L: 678-9253
ryanh@xxxxxxxxxx
fix_ptrace_paravirt64.patch
Description: Text document
setup_sane_cr0.patch
Description: Text document
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|