# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1272977995 -3600
# Node ID efa1b905d89331f29068d3204c512045c5d2da88
# Parent 793bc267e88338093b0012c7c0b404cd61853c16
mce: Revert 21264:a8eb546e3cb0
Changes Xen machine-check ABI in incompatible way.
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
xen/arch/x86/cpu/mcheck/mce.c | 24 ++++++------------------
xen/include/public/arch-x86/xen-mca.h | 5 +----
2 files changed, 7 insertions(+), 22 deletions(-)
diff -r 793bc267e883 -r efa1b905d893 xen/arch/x86/cpu/mcheck/mce.c
--- a/xen/arch/x86/cpu/mcheck/mce.c Tue May 04 12:52:48 2010 +0100
+++ b/xen/arch/x86/cpu/mcheck/mce.c Tue May 04 13:59:55 2010 +0100
@@ -1274,7 +1274,6 @@ long do_mca(XEN_GUEST_HANDLE(xen_mc_t) u
unsigned int target;
struct xen_mc_msrinject *mc_msrinject;
struct xen_mc_mceinject *mc_mceinject;
- cpumask_t target_map;
if (!IS_PRIV(v->domain) )
return x86_mcerr(NULL, -EPERM);
@@ -1412,7 +1411,6 @@ long do_mca(XEN_GUEST_HANDLE(xen_mc_t) u
mc_mceinject = &op->u.mc_mceinject;
target = mc_mceinject->mceinj_cpunr;
- flags = mc_mceinject->mceinj_flag;
if (target >= NR_CPUS)
return x86_mcerr("do_mca #MC: bad target", -EINVAL);
@@ -1421,22 +1419,12 @@ long do_mca(XEN_GUEST_HANDLE(xen_mc_t) u
return x86_mcerr("do_mca #MC: target offline", -EINVAL);
add_taint(TAINT_ERROR_INJECT);
- if (flags == XEN_MC_UC) {
- if ( mce_broadcast )
- on_each_cpu(x86_mc_mceinject, mc_mceinject, 0);
- else
- on_selected_cpus(cpumask_of(target),
x86_mc_mceinject,
- mc_mceinject, 1);
- }
- else if (flags == XEN_MC_CE) {
- if (mce_broadcast)
- send_IPI_mask(&cpu_online_map,
CMCI_APIC_VECTOR);
- else {
- cpus_clear(target_map);
- cpu_set(target, target_map);
- send_IPI_mask(&target_map, CMCI_APIC_VECTOR);
- }
- }
+
+ if ( mce_broadcast )
+ on_each_cpu(x86_mc_mceinject, mc_mceinject, 0);
+ else
+ on_selected_cpus(cpumask_of(target), x86_mc_mceinject,
+ mc_mceinject, 1);
break;
default:
diff -r 793bc267e883 -r efa1b905d893 xen/include/public/arch-x86/xen-mca.h
--- a/xen/include/public/arch-x86/xen-mca.h Tue May 04 12:52:48 2010 +0100
+++ b/xen/include/public/arch-x86/xen-mca.h Tue May 04 13:59:55 2010 +0100
@@ -400,11 +400,8 @@ struct xen_mc_msrinject {
#define MC_MSRINJ_F_INTERPOSE 0x1
#define XEN_MC_mceinject 5
-#define XEN_MC_UC 0
-#define XEN_MC_CE 1
struct xen_mc_mceinject {
- uint32_t mceinj_cpunr; /* target processor id */
- uint32_t mceinj_flag; /* UC error or CE error flag */
+ unsigned int mceinj_cpunr; /* target processor id */
};
struct xen_mc {
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|