[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Free shadows of any pages which are released by a domain back to Xen.
# HG changeset patch # User cl349@xxxxxxxxxxxxxxxxxxxx # Node ID d102a30417a786d12a933d98e7a2f1be629805c4 # Parent 4c2d101a3228fa27117a771121f00bc38964e89d Free shadows of any pages which are released by a domain back to Xen. This should fix the "Assertion '! IS_INVALID_M2P_ENTRY(gpfn)'"-crash in free_shadow_page on domain destruction. Signed-off-by: Christian Limpach <Christian.Limpach@xxxxxxxxxxxx> diff -r 4c2d101a3228 -r d102a30417a7 xen/include/asm-x86/shadow.h --- a/xen/include/asm-x86/shadow.h Wed Mar 29 15:47:46 2006 +++ b/xen/include/asm-x86/shadow.h Wed Mar 29 15:50:59 2006 @@ -1506,6 +1506,7 @@ struct domain *d, unsigned long gpfn, unsigned long mfn) { struct domain_mmap_cache c1, c2; + unsigned long type; if ( likely(!shadow_mode_translate(d)) ) return; @@ -1514,6 +1515,8 @@ domain_mmap_cache_init(&c2); shadow_lock(d); shadow_sync_and_drop_references(d, mfn_to_page(mfn)); + while ( (type = shadow_max_pgtable_type(d, gpfn, NULL)) != PGT_none ) + free_shadow_page(__shadow_status(d, gpfn, type)); set_p2m_entry(d, gpfn, -1, &c1, &c2); set_gpfn_from_mfn(mfn, INVALID_M2P_ENTRY); shadow_unlock(d); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |