David Hildenbrand <david@xxxxxxxxxx> writes: > The VDSO is part of the kernel image and therefore the struct pages are > marked as reserved during boot. > > As we install a special mapping, the actual struct pages will never be > exposed to MM via the page tables. We can therefore leave the pages > marked as reserved. > > Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> > Cc: Paul Mackerras <paulus@xxxxxxxxx> > Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx> > Cc: Christophe Leroy <christophe.leroy@xxxxxx> > Cc: Kees Cook <keescook@xxxxxxxxxxxx> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > Cc: Michal Hocko <mhocko@xxxxxxxxxx> > Cc: Matthew Wilcox <willy@xxxxxxxxxxxxx> > Signed-off-by: David Hildenbrand <david@xxxxxxxxxx> > --- > arch/powerpc/kernel/vdso.c | 2 -- > 1 file changed, 2 deletions(-) Thanks. Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx> (powerpc) cheers > diff --git a/arch/powerpc/kernel/vdso.c b/arch/powerpc/kernel/vdso.c > index 65b3bdb99f0b..d59dc2e9a695 100644 > --- a/arch/powerpc/kernel/vdso.c > +++ b/arch/powerpc/kernel/vdso.c > @@ -795,7 +795,6 @@ static int __init vdso_init(void) > BUG_ON(vdso32_pagelist == NULL); > for (i = 0; i < vdso32_pages; i++) { > struct page *pg = virt_to_page(vdso32_kbase + i*PAGE_SIZE); > - ClearPageReserved(pg); > get_page(pg); > vdso32_pagelist[i] = pg; > } > @@ -809,7 +808,6 @@ static int __init vdso_init(void) > BUG_ON(vdso64_pagelist == NULL); > for (i = 0; i < vdso64_pages; i++) { > struct page *pg = virt_to_page(vdso64_kbase + i*PAGE_SIZE); > - ClearPageReserved(pg); > get_page(pg); > vdso64_pagelist[i] = pg; > } > -- > 2.17.2