This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-changelog] [xen-unstable] Don't scrub broken pages

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] Don't scrub broken pages
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 08 Feb 2010 02:30:20 -0800
Delivery-date: Mon, 08 Feb 2010 02:30:21 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1265624294 0
# Node ID 391cb20b6ea96d6f36b3647927744bf0e4057c5b
# Parent  f330b15f885ded7ee26594bd8ab27e206e2cb4cc
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@xxxxxxxxx>
 xen/common/page_alloc.c |    3 +++
 1 files changed, 3 insertions(+)

diff -r f330b15f885d -r 391cb20b6ea9 xen/common/page_alloc.c
--- a/xen/common/page_alloc.c   Mon Feb 08 10:14:48 2010 +0000
+++ b/xen/common/page_alloc.c   Mon Feb 08 10:18:14 2010 +0000
@@ -1256,6 +1256,9 @@ void scrub_one_page(struct page_info *pg
     void *p = __map_domain_page(pg);
+    if ( unlikely(pg->count_info & PGC_broken) )
+        return;
 #ifndef NDEBUG
     /* Avoid callers relying on allocations returning zeroed pages. */
     memset(p, 0xc2, PAGE_SIZE);

Xen-changelog mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] Don't scrub broken pages, Xen patchbot-unstable <=