Subject: [PATCH] arm64: allow vmalloc regions to be set with set_memory_*

From: [email-masked] (Will Deacon)
Date: Thu, 28 Jan 2016 18:10:58 +0000

On Thu, Jan 28, 2016 at 05:43:41PM +0100, Ard Biesheuvel wrote:
> On 28 January 2016 at 16:08, Will Deacon <[email-masked]> wrote:
> > On Mon, Jan 18, 2016 at 03:01:05PM +0100, Ard Biesheuvel wrote:
> >> The range of set_memory_* is currently restricted to the module address
> >> range because of difficulties in breaking down larger block sizes.
> >> vmalloc maps PAGE_SIZE pages so it is safe to use as well. Update the
> >> function ranges and add a comment explaining why the range is restricted
> >> the way it is.
> >>
> >> Suggested-by: Laura Abbott <[email-masked]>
> >> Signed-off-by: Ard Biesheuvel <[email-masked]>
> >> ---
> >>  arch/arm64/mm/pageattr.c | 23 +++++++++++++++++++----
> >>  1 file changed, 19 insertions(+), 4 deletions(-)
> >
> > What's the user for this? It would be better to apply along with something
> > that actually needs to change permission for arbitrary vmalloc mappings.
> >
> 
> BPF already uses set_memory_ro() but doesn't bother to check the return value.

Urgh :(

Then I can take it as a fix, if you like.

Will