|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] [Queries] Unpinning and Unhooking shadow
Hi All,
I have some queries regarding unpinning and unhooking top level shadow page
table for HVM guest on page fault.
whenever we try to make some space prior to allocating the shadow using
prealloc_shadaow() call
1. we do back traversing of per domain list of top level shadow pages and try
to unpin them using function call sh_unpin()
but in unpinning shadow we are unsetting pin bit in page->count_info and
decrement the reference count of shadow page
using call to sh_put_ref() [define in xen/arch/x86/mm/shadow/private.h]
but in this function I am not able to understand why this condition is
unlikely?
if ( unlikely(nx == 0) )
sh_destroy_shadow(v, smfn);
as we are trying to make space for new shadow which would be created using
shadow_alloc()
so this sh_destroy_shadow must be called for any one of the entry in toplevel
list to free space of at least required order
and put back the pages in freelist of shadow pool ?
2. if we could not free space for shadow creation by this then why are we not
pinning all the top level pages again while we are
marking them unpinned while traversing the top level list?
Or is it not necessary to pinned all top level shadows in list? or it has some
other significance?
3. Also after this if still space is not free then we try to unhooking the same
toplevel list by going though each entry in list and
marking corresponding PML4 table's entries as 0 if that entry was marked
PRESENT.
But I am not able to understand how this will return pages back to per domain
freelist of shadow pages?
Please correct if there is something wrong in my understanding or if I have
missed any piece of code in this flow
Plz provide your valuable replies to clear my queries/doubts.
Jeet
__________________________________________________________
Yahoo! India Answers: Share what you know. Learn something new
http://in.answers.yahoo.com/
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel] [Queries] Unpinning and Unhooking shadow,
jeet <=
|
|
|
|
|