Print this page
16413 Post-barrier Return Stack Buffer (consider no-eIBRS cases)
16413 Post-barrier Return Stack Buffer (PBRSB) fixes can be detected in HW
*** 932,941 ****
--- 932,942 ----
#define X86FSET_AVX512_VBMI2 106
#define X86FSET_AVX512_BF16 107
#define X86FSET_AUTO_IBRS 108
#define X86FSET_RFDS_NO 109
#define X86FSET_RFDS_CLEAR 110
+ #define X86FSET_PBRSB_NO 111
/*
* Intel Deep C-State invariant TSC in leaf 0x80000007.
*/
#define CPUID_TSC_CSTATE_INVARIANCE (0x100)
*** 1584,1594 ****
#if !defined(_ASM)
#if defined(_KERNEL) || defined(_KMEMUSER)
! #define NUM_X86_FEATURES 111
extern uchar_t x86_featureset[];
extern void free_x86_featureset(void *featureset);
extern boolean_t is_x86_feature(void *featureset, uint_t feature);
extern void add_x86_feature(void *featureset, uint_t feature);
--- 1585,1595 ----
#if !defined(_ASM)
#if defined(_KERNEL) || defined(_KMEMUSER)
! #define NUM_X86_FEATURES 112
extern uchar_t x86_featureset[];
extern void free_x86_featureset(void *featureset);
extern boolean_t is_x86_feature(void *featureset, uint_t feature);
extern void add_x86_feature(void *featureset, uint_t feature);
*** 1607,1616 ****
--- 1608,1618 ----
* These functions are all used to perform various side-channel mitigations.
* Please see uts/i86pc/os/cpuid.c for more information.
*/
extern void (*spec_uarch_flush)(void);
extern void x86_rsb_stuff(void);
+ extern void x86_rsb_stuff_vmexit(void);
extern void x86_md_clear(void);
#endif
#if defined(_KERNEL)