[PATCH 1/3] arm64: vdso: put vdso datapage in a separate vma
Nathan Lynch
Nathan_Lynch at mentor.com
Wed Jul 9 12:44:33 PDT 2014
Hi Will, one question (and maybe it's more of a question for Andy than
for you).
On 07/09/2014 01:22 PM, Will Deacon wrote:
> - ret = install_special_mapping(mm, vdso_base, vdso_mapping_len,
> + ret = install_special_mapping(mm, vdso_base, vdso_text_len,
> VM_READ|VM_EXEC|
> VM_MAYREAD|VM_MAYWRITE|VM_MAYEXEC,
> vdso_pagelist);
> - if (ret) {
> - mm->context.vdso = NULL;
> + if (ret)
> + goto up_fail;
> +
> + vdso_base += vdso_text_len;
> + ret = install_special_mapping(mm, vdso_base, PAGE_SIZE,
> + VM_READ|VM_MAYREAD,
> + vdso_pagelist + vdso_pages);
I note this code sets VM_MAYREAD for the data page, while x86's vvar
mapping sets only VM_READ. (Personally I am not totally clear on the
meaning of VM_MAYREAD, but it looks like it would have implications for
use of mprotect on the mapping.) Should one arch or the other adjust
its flags?
More information about the linux-arm-kernel
mailing list