WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [patch 0/3]Enable CMCI (Corrected Machine Check Error Interr

To: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Subject: [Xen-devel] [patch 0/3]Enable CMCI (Corrected Machine Check Error Interrupt) for Intel CPUs
From: "Ke, Liping" <liping.ke@xxxxxxxxx>
Date: Mon, 22 Dec 2008 11:54:53 +0800
Accept-language: en-US
Acceptlanguage: en-US
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Sun, 21 Dec 2008 19:55:24 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Aclj6QtzedLMaThJSm+cYEhexWDApw==
Thread-topic: [patch 0/3]Enable CMCI (Corrected Machine Check Error Interrupt) for Intel CPUs
Hi, All

According to Keir's suggestion, I re-organize those patches and make sure that 
each intermediate patch could be compiled and running.

Since remove old p4 and p6 files are hard to be split, I now put the remove and 
replace in the one patch. Is it ok?

Any comment, just let me know.
Thanks a lot for your help!
Criping

Following 3 patches are for enabling CMCI of Intel CPUs in XEN.
---------------------------------------------------------------------------
Patch 1: change_stop_machine_run.patch changes stopmachine_run interface so 
that we can designate the callback function running on the cpu_map instead of 
single one. We do this change because *cmci owner change* callback (please 
refer to note 3 below) needs to be executed on each of online cpus when do CPU 
hotplug. And also, we add a callback function for CMCI use before taking CPU 
down.
Patch 2: apic_cmci.patch adds the new CMCI LVT entry. And also it did small 
clean up jobs for thermal since thermal is not only P4 specific, but also later 
Intel CPUs common features. The old thermal removal will also be finished in 
patch 3 combined with old P4/p6 removals.
Patch 3: clean_and_cmci.patch contains the main CMCI support logic including 
removing old duplicated P4/P6 files, add new MCA/CMCI common init/interrupt 
processing, *CMCI owner judge algorithms* when (bring up CPUs or do CPU 
hotplug), polling mechanism, etc.
----------------------------------------------------------------------------
About Test 
We wrote CMCI injection tool to test the patch. Also we wrote DOM0 test patches 
to see whether logs are accepted by DOM0.
We test the patches on both CMCI-support and NO-CMCI-support machine.
We test the patches combined with CPU online/offline ops and S3&S5 ops which 
cause banks owner changing
----------------------------------------------------------------------------
Below notes might be helpful
1) CMCI use another apic_lvt entry (now max_lvt could be 6 in newer Intel 
platform)

2) CMCI is combined with polling mechanism since some CPUs don't support CMCI. 
And for supporting CPUs, still some banks don't support CMCI. So we keep 
polling mechanism. Also add simple policy, when find errors, shorten polling 
interval. Otherwise, lengthen intervals. 

3) MCA banks shares between cores/threads. For avoiding mis-ops, we need to 
judge *owner* for each bank. Each bank only has one owner, the owner manages 
the bank. The owner will be set up when cpu_up. Owners might be changed when 
doing cpu-hotplug.

4) When one CMCI interrupt is accepted and logged by XEN, XEN will notify DOM0. 
We don't plan to check in DOM0 code now.

For more info, please refer to latest Intel software development manual, 
Chapter 14.
--------------------------------------------------------------------------
Machine check (Uncorrectable Error) support will be sent in later patches, so 
we keep old machine check handling code. 

Any comment, just let us know. 
Thanks a lot for your help!
Regards,
Criping


_______________________________________________


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel