Kip Macy
2005-Dec-04 02:57 UTC
[Xen-devel] domain_pause_for_debugger not pausing multiple vcpus
Debugging an MP guest doesn't work. It appears that if a vcpu other than 0 hits an int3 it doesn't get paused. If the comment in domain_pause_for_debugger is correct (below), this function is completely inappropriate for breakpoint debugging. NOTE: Thise does not synchronously pause the domain. The debugger must issue a PAUSEDOMAIN command to ensure that all execution has ceased and guest state is committed to memory. What is the correct way to synchronously deschedule a domain? Replacing vcpu_sleep_nosync with vcpu_sleep_sync causes dom0 to lock up when hitting a breakpoint. Thanks. -Kip _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Kip Macy
2005-Dec-04 05:46 UTC
[Xen-devel] Re: domain_pause_for_debugger not pausing multiple vcpus
Never mind. I wasn't setting the current_inferior to the VCPU that hit the breakpoint, thus causing the eip to not be decremented. At least on a uniprocessor, debugging an MP guest works correctly now. Sorry for the noise. -Kip On 12/3/05, Kip Macy <kip.macy@gmail.com> wrote:> > Debugging an MP guest doesn't work. It appears that if a vcpu other than 0 > hits an int3 it doesn't get paused. > > If the comment in domain_pause_for_debugger is correct (below), this > function is completely inappropriate for breakpoint debugging. > > NOTE: Thise does not synchronously pause the domain. The debugger > must issue a PAUSEDOMAIN command to ensure that all execution > has ceased and guest state is committed to memory. > > What is the correct way to synchronously deschedule a domain? Replacing > vcpu_sleep_nosync with vcpu_sleep_sync causes dom0 to lock up when hitting a > breakpoint. > > > Thanks. > > > -Kip > > > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel