Re: [PATCH 17/21] x86/fpu: Use proper mask to replace full instruction mask

From: Peter Zijlstra
Date: Fri Jun 19 2020 - 15:32:22 EST


On Fri, Jun 19, 2020 at 07:04:05AM -0700, kan.liang@xxxxxxxxxxxxxxx wrote:

> KVM includes the header file fpu/internal.h. To avoid 'undefined
> xfeatures_mask_all' compiling issue, xfeatures_mask_all has to be
> exported.

> diff --git a/arch/x86/kernel/fpu/xstate.c b/arch/x86/kernel/fpu/xstate.c
> index 587e03f..eb2e44e 100644
> --- a/arch/x86/kernel/fpu/xstate.c
> +++ b/arch/x86/kernel/fpu/xstate.c
> @@ -58,6 +58,7 @@ static short xsave_cpuid_features[] __initdata = {
> * XSAVE buffer, both supervisor and user xstates.
> */
> u64 xfeatures_mask_all __read_mostly;
> +EXPORT_SYMBOL_GPL(xfeatures_mask_all);

*groan*...

AFAICT KVM doesn't actually use any of those functions, can't we have
something like BUILD_KVM (like BUILD_VDSO) and exclude those functions
from the KVM build?

I so detest exporting random crap because kvm..