On 9/30/2017 5:36 PM, Tj wrote:
With 4.14.0rc2 on an Intel CPU with an Nvidia GPU the proprietary nvidia driver (v340.102) fails to modpost due to: FATAL: modpost: GPL-incompatible module nvidia.ko uses GPL-only symbol 'sme_me_mask' I think this is due to: config ARCH_HAS_MEM_ENCRYPT def_bool y
I think this is more likely because of CONFIG_AMD_MEM_ENCRYPT=y. If CONFIG_AMD_MEM_ENCRYPT=n then sme_me_mask becomes a #define. I'm assuming that changing the sme_me_mask in arch/x86/mm/mem_encrypt.c from EXPORT_SYMBOL_GPL to EXPORT_SYMBOL fixes the issue? Boris, is it a big deal to make this change if that's the issue? Thanks, Tom
I noticed that a grep of the built kernel for "sme_me_mask" shows the symbol imported into more than 300 modules on an Ubuntu mainline build of 4.14.0-041400rc2-lowlatency. Should the new symbol be referenced so widely and how can it be prevented from being included in proprietary modules on systems that don't have SME even if the kernel is built with it enabled? >