summaryrefslogtreecommitdiff
path: root/include/xen/interface
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2019-11-11 15:46:26 +0100
committerJuergen Gross <jgross@suse.com>2019-11-14 10:01:57 +0100
commit4e3f77d8419b6787f3eb4d4f5178f459d693f9bb (patch)
tree5d42c49425a3f3ab5e6e6627538a4855907eb854 /include/xen/interface
parentca8ffdaea560a3be3f0701ff4b019fa25a308f82 (diff)
xen/mcelog: add PPIN to record when available
This is to augment commit 3f5a7896a5 ("x86/mce: Include the PPIN in MCE records when available"). I'm also adding "synd" and "ipid" fields to struct xen_mce, in an attempt to keep field offsets in sync with struct mce. These two fields won't get populated for now, though. Signed-off-by: Jan Beulich <jbeulich@suse.com> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com> Signed-off-by: Juergen Gross <jgross@suse.com>
Diffstat (limited to 'include/xen/interface')
-rw-r--r--include/xen/interface/xen-mca.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/include/xen/interface/xen-mca.h b/include/xen/interface/xen-mca.h
index d7a45f08fb48..7483a78d2425 100644
--- a/include/xen/interface/xen-mca.h
+++ b/include/xen/interface/xen-mca.h
@@ -331,7 +331,11 @@ struct xen_mc {
};
DEFINE_GUEST_HANDLE_STRUCT(xen_mc);
-/* Fields are zero when not available */
+/*
+ * Fields are zero when not available. Also, this struct is shared with
+ * userspace mcelog and thus must keep existing fields at current offsets.
+ * Only add new fields to the end of the structure
+ */
struct xen_mce {
__u64 status;
__u64 misc;
@@ -352,6 +356,9 @@ struct xen_mce {
__u32 socketid; /* CPU socket ID */
__u32 apicid; /* CPU initial apic ID */
__u64 mcgcap; /* MCGCAP MSR: machine check capabilities of CPU */
+ __u64 synd; /* MCA_SYND MSR: only valid on SMCA systems */
+ __u64 ipid; /* MCA_IPID MSR: only valid on SMCA systems */
+ __u64 ppin; /* Protected Processor Inventory Number */
};
/*