debuggers.hg
changeset 20958:391cb20b6ea9
Don't scrub broken pages
Don't touch the poison pages when scrub the pages. Consuming poison
page will contaminate the CPU context and may cause system crash.
Signed-off-by: Jiang, Yunhong <yunhong.jiang@intel.com>
Don't touch the poison pages when scrub the pages. Consuming poison
page will contaminate the CPU context and may cause system crash.
Signed-off-by: Jiang, Yunhong <yunhong.jiang@intel.com>
author | Keir Fraser <keir.fraser@citrix.com> |
---|---|
date | Mon Feb 08 10:18:14 2010 +0000 (2010-02-08) |
parents | f330b15f885d |
children | 5b895c3f4386 |
files | xen/common/page_alloc.c |
line diff
1.1 --- a/xen/common/page_alloc.c Mon Feb 08 10:14:48 2010 +0000 1.2 +++ b/xen/common/page_alloc.c Mon Feb 08 10:18:14 2010 +0000 1.3 @@ -1256,6 +1256,9 @@ void scrub_one_page(struct page_info *pg 1.4 { 1.5 void *p = __map_domain_page(pg); 1.6 1.7 + if ( unlikely(pg->count_info & PGC_broken) ) 1.8 + return; 1.9 + 1.10 #ifndef NDEBUG 1.11 /* Avoid callers relying on allocations returning zeroed pages. */ 1.12 memset(p, 0xc2, PAGE_SIZE);