>>> 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

Reply via email to