@@ -37,7 +37,12 @@
#define AC_VECTOR 17
#define MC_VECTOR 18
#define XM_VECTOR 19
+#define XF_VECTOR XM_VECTOR /* AMD */
+#define VE_VECTOR 20 /* Intel only */
#define CP_VECTOR 21
+#define HV_VECTOR 28 /* AMD only */
+#define VC_VECTOR 29 /* AMD only */
+#define SX_VECTOR 30 /* AMD only */
#define X86_CR0_PE_BIT (0)
#define X86_CR0_PE BIT(X86_CR0_PE_BIT)
@@ -129,7 +129,11 @@ const char* exception_mnemonic(int vector)
VEC(AC);
VEC(MC);
VEC(XM);
+ VEC(VE);
VEC(CP);
+ VEC(HV);
+ VEC(VC);
+ VEC(SX);
default: return "#??";
#undef VEC
}
Intel and AMD have some vendor specific exception vectors, namely: - Intel only: #VE (20), - AMD only: #HV (28), #VC (29) and #SX (30). Also Intel's #XM (19) is called #XF for AMD. Add definitions for all of these and add comments stating they're vendor specific. Signed-off-by: Mathias Krause <minipli@grsecurity.net> --- lib/x86/processor.h | 5 +++++ lib/x86/desc.c | 4 ++++ 2 files changed, 9 insertions(+)