|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] Detecting deadlocks with hypervisor..
Keir Fraser wrote:
On 7 Apr 2006, at 18:11, T S wrote:
We took a look at the xc_linux_save() function ... and what we see is
that
the canonicalize action is actually done by the Dom-0 (and not by the
Dom-U);
Dom-0 is able to do this because it is able to access the page tables
of Dom-U
as well as the pfn2mfn list of the Dom-U. Based on this, we think the
Dom-0 can
actually save the 'context' of the deadlocked Dom-U. Please correct
me if this
claim is wrong.
Also, given that Dom-0 can access the page tables and other
structures of the deadlocked guest,
can one of you be able to tell me what changes I need to do to
xm_linux_save( ) (and other related functions) to save the state of
the deadlocked guest without doing any handshake with the guest OS ?
You can get at the consistent state of a guest by pausing it and then
reading its state. However, the reason for the handshake is to ensure
that the guest is not currently accessing pagetables or doing other
critical operations. If it were then we could not safely translate its
memory page addresses as it could have those addresses in places like
its kernel stacks or register contexts, where they would not get
translated and would cause a crash on restore.
I should add that this is a problem specific to writable page tables as
the guest must be aware of the actual physical pages that it is using.
With a VT/SVM guest or on an architecture that doesn't use writable page
tables, this isn't an issue.
Regards,
Anthony Liguoi
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|