On Wed, 8 Nov 2017, Jiri Kosina wrote: > From: Jiri Kosina <jkosina@xxxxxxx> > > Commit > > 7744ccdbc16f0 ("x86/mm: Add Secure Memory Encryption (SME) support") > > as a side-effect made PAGE_KERNEL all of a sudden unavailable to modules > which can't make use of EXPORT_SYMBOL_GPL() symbols. > > This is because once SME is enabled, sme_me_mask (which is introduced as > EXPORT_SYMBOL_GPL) makes its way to PAGE_KERNEL through _PAGE_ENC, causing > imminent build failure for all the modules which make use of all the > EXPORT-SYMBOL()-exported API (such as vmap(), __vmalloc(), > remap_pfn_range(), ...). > > Exporting (as EXPORT_SYMBOL()) interfaces (and having done so for ages) > that take pgprot_t argument, while making it impossible to -- all of a > sudden -- pass PAGE_KERNEL to it, feels rather incosistent. > > Restore the original behavior and make it possible to pass PAGE_KERNEL to > all its EXPORT_SYMBOL() consumers. To be honest, I fundamentaly hate this, because proprietary crap out there more or less holds the kernel hostage in its decisions of marking new functionality GPL only. You have already a choice by disabling SME, but sure you want to get everything: new features and proprietary stuff. I fear, that I can't prevent this from being applied, but whoever picks up that patch, please add: Despised-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>