|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-4.0-testing] X86: Fix mce offline page bug
# HG changeset patch
# User Liu, Jinsong <jinsong.liu@xxxxxxxxx>
# Date 1302187336 -3600
# Node ID ab11156d606bfae77499067faf6f653a858c10d5
# Parent 57721c697c4614c90408d8e42dda36b01cf7bc41
X86: Fix mce offline page bug
c/s 19913 break mce offline page logic:
For page_state_is(pg, free), it's impossible to trigger the case;
For page_state_is(pg, offlined), it in fact didn't offline related
page;
This patch fix the bug, and remove an ambiguous comment.
Signed-off-by: Liu, Jinsong <jinsong.liu@xxxxxxxxx>
xen-unstable changeset: 23177:d8bb2de119de
xen-unstable date: Thu Apr 07 12:12:01 2011 +0100
---
diff -r 57721c697c46 -r ab11156d606b xen/common/page_alloc.c
--- a/xen/common/page_alloc.c Thu Apr 07 15:41:05 2011 +0100
+++ b/xen/common/page_alloc.c Thu Apr 07 15:42:16 2011 +0100
@@ -574,10 +574,6 @@
/*
- * Following possible status for a page:
- * free and Online; free and offlined; free and offlined and broken;
- * assigned and online; assigned and offlining; assigned and offling and broken
- *
* Following rules applied for page offline:
* Once a page is broken, it can't be assigned anymore
* A page will be offlined only if it is free
@@ -674,16 +670,11 @@
old_info = mark_page_offline(pg, broken);
- if ( page_state_is(pg, free) )
+ if ( page_state_is(pg, offlined) )
{
- /* Free pages are reserve directly */
reserve_heap_page(pg);
*status = PG_OFFLINE_OFFLINED;
}
- else if ( page_state_is(pg, offlined) )
- {
- *status = PG_OFFLINE_OFFLINED;
- }
else if ( (owner = page_get_owner_and_reference(pg)) )
{
*status = PG_OFFLINE_OWNED | PG_OFFLINE_PENDING |
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-4.0-testing] X86: Fix mce offline page bug,
Xen patchbot-4 . 0-testing <=
|
|
|
|
|