>>> On 23.01.19 at 14:24, <julien.gr...@arm.com> wrote: > On 23/01/2019 11:51, Norbert Manthey wrote: >> --- a/xen/include/xen/nospec.h >> +++ b/xen/include/xen/nospec.h >> @@ -68,10 +68,18 @@ static inline bool lfence_true(void) { return true; } >> #endif >> >> /* >> - * protect evaluation of conditional with respect to speculation >> + * allow to protect evaluation of conditional with respect to speculation >> on x86 >> */ >> -#define evaluate_nospec(condition) \ >> +#if defined(CONFIG_L1TF_LFENCE_NONE) || !defined(CONFIG_X86) >> +#define evaluate_nospec(condition) (condition) >> +#elif defined(CONFIG_L1TF_LFENCE_BOTH) >> +#define evaluate_nospec(condition) \ >> (((condition) && lfence_true()) || !lfence_true()) >> +#elif defined(CONFIG_L1TF_LFENCE_TRUE) >> +#define evaluate_nospec(condition) ((condition) && lfence_true()) >> +#elif defined(CONFIG_L1TF_LFENCE_INTERMEDIATE) >> +#define evaluate_nospec(condition) ({ bool res = (condition); rmb(); res; }) > +#endif > > None of the configs are defined on Arm, so can this be moved in arch-x86?
To be honest I'd like to avoid introducing asm/nospec.h for the time being. Jan _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel