[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] X86: Fix mce offline page bug
# HG changeset patch # User Liu, Jinsong <jinsong.liu@xxxxxxxxx> # Date 1302174721 -3600 # Node ID d8bb2de119de41d8a62174963aadc0950dea5557 # Parent 712c8b8945843878847e4d9032bf3b13f2a44c75 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> --- diff -r 712c8b894584 -r d8bb2de119de xen/common/page_alloc.c --- a/xen/common/page_alloc.c Thu Apr 07 11:39:35 2011 +0100 +++ b/xen/common/page_alloc.c Thu Apr 07 12:12:01 2011 +0100 @@ -611,10 +611,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 @@ -711,16 +707,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
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |