decruft the vmalloc API v2

From: Christoph Hellwig
Date: Tue Apr 14 2020 - 09:14:36 EST


Hi all,

Peter noticed that with some dumb luck you can toast the kernel address
space with exported vmalloc symbols.

I used this as an opportunity to decruft the vmalloc.c API and make it
much more systematic. This also removes any chance to create vmalloc
mappings outside the designated areas or using executable permissions
from modules. Besides that it removes more than 300 lines of code.

A git tree is also available here:

git://git.infradead.org/users/hch/misc.git sanitize-vmalloc-api.2

Gitweb:

http://git.infradead.org/users/hch/misc.git/shortlog/refs/heads/sanitize-vmalloc-api.2

Changes since v1:
- implement pgprot_nx for arm64 (Mark Rutland)
- fix a patch description
- properly pass pgprot to vmap in ion
- add a new patch to fix vmap() API misuse
- fix a vmap argument in x86
- two more vmalloc cleanups
- cleanup use of the unmap_kernel_range API
- rename ioremap_pbh to ioremap_phb