Print this page
9441 kmdb should stash %cr3 in kdiregs
Reviewed by: John Levon <john.levon@joyent.com>
8956 Implement KPTI
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
9210 remove KMDB branch debugging support
9211 ::crregs could do with cr2/cr3 support
9209 ::ttrace should be able to filter by thread
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Reviewed by: Yuri Pankov <yuripv@yuripv.net>

*** 20,42 **** */ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ #ifndef _AMD64_SYS_KDI_REGS_H #define _AMD64_SYS_KDI_REGS_H - #pragma ident "%Z%%M% %I% %E% SMI" - #ifdef __cplusplus extern "C" { #endif - #define KDIREG_NGREG 31 - /* * A modified version of struct regs layout. */ #define KDIREG_SAVFP 0 --- 20,40 ---- */ /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. + * + * Copyright 2018 Joyent, Inc. */ #ifndef _AMD64_SYS_KDI_REGS_H #define _AMD64_SYS_KDI_REGS_H #ifdef __cplusplus extern "C" { #endif /* * A modified version of struct regs layout. */ #define KDIREG_SAVFP 0
*** 57,97 **** #define KDIREG_R14 15 #define KDIREG_R15 16 #define KDIREG_FSBASE 17 #define KDIREG_GSBASE 18 #define KDIREG_KGSBASE 19 ! #define KDIREG_DS 20 ! #define KDIREG_ES 21 ! #define KDIREG_FS 22 ! #define KDIREG_GS 23 ! #define KDIREG_TRAPNO 24 ! #define KDIREG_ERR 25 ! #define KDIREG_RIP 26 ! #define KDIREG_CS 27 ! #define KDIREG_RFLAGS 28 ! #define KDIREG_RSP 29 ! #define KDIREG_SS 30 #define KDIREG_PC KDIREG_RIP #define KDIREG_SP KDIREG_RSP #define KDIREG_FP KDIREG_RBP - #ifdef _ASM - - /* Patch point for MSR clearing. */ - #define KDI_MSR_PATCH \ - nop; nop; nop; nop; \ - nop; nop; nop; nop; \ - nop; nop; nop; nop; \ - nop; nop; nop; nop; \ - nop - - #endif /* _ASM */ - - #define KDI_MSR_PATCHOFF 8 /* bytes of code before patch point */ - #define KDI_MSR_PATCHSZ 17 /* bytes in KDI_MSR_PATCH, above */ - #ifdef __cplusplus } #endif #endif /* _AMD64_SYS_KDI_REGS_H */ --- 55,84 ---- #define KDIREG_R14 15 #define KDIREG_R15 16 #define KDIREG_FSBASE 17 #define KDIREG_GSBASE 18 #define KDIREG_KGSBASE 19 ! #define KDIREG_CR2 20 ! #define KDIREG_CR3 21 ! #define KDIREG_DS 22 ! #define KDIREG_ES 23 ! #define KDIREG_FS 24 ! #define KDIREG_GS 25 ! #define KDIREG_TRAPNO 26 ! #define KDIREG_ERR 27 ! #define KDIREG_RIP 28 ! #define KDIREG_CS 29 ! #define KDIREG_RFLAGS 30 ! #define KDIREG_RSP 31 ! #define KDIREG_SS 32 + #define KDIREG_NGREG (KDIREG_SS + 1) + #define KDIREG_PC KDIREG_RIP #define KDIREG_SP KDIREG_RSP #define KDIREG_FP KDIREG_RBP #ifdef __cplusplus } #endif #endif /* _AMD64_SYS_KDI_REGS_H */