diff -r 0049de3827bc xen/arch/x86/mm/hap/hap.c --- a/xen/arch/x86/mm/hap/hap.c Fri Nov 23 11:06:15 2012 +0000 +++ b/xen/arch/x86/mm/hap/hap.c Wed Nov 28 15:21:32 2012 +0900 @@ -567,6 +567,12 @@ void hap_teardown(struct domain *d) d->arch.paging.mode &= ~PG_log_dirty; + if ( d->arch.hvm_domain.dirty_vram ) + { + xfree(d->arch.hvm_domain.dirty_vram); + d->arch.hvm_domain.dirty_vram = NULL; + } + paging_unlock(d); }