$NetBSD: patch-CVE-2014-4021,v 1.1 2014/06/18 13:47:08 drochner Exp $ http://lists.xenproject.org/archives/html/xen-devel/2014-06/msg02095.html --- xen/common/page_alloc.c.orig 2013-09-10 06:42:18.000000000 +0000 +++ xen/common/page_alloc.c 2014-06-18 10:36:33.000000000 +0000 @@ -1123,7 +1123,10 @@ void free_xenheap_pages(void *v, unsigne pg = virt_to_page(v); for ( i = 0; i < (1u << order); i++ ) + { + scrub_one_page(&pg[i]); pg[i].count_info &= ~PGC_xen_heap; + } free_heap_pages(pg, order); } @@ -1290,6 +1293,8 @@ void free_domheap_pages(struct page_info else { /* Freeing anonymous domain-heap pages. */ + for ( i = 0; i < (1 << order); i++ ) + scrub_one_page(&pg[i]); free_heap_pages(pg, order); drop_dom_ref = 0; }