lkml.org 
[lkml]   [2008]   [Jan]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 00 of 10] x86: unify asm/pgtable.h

* Jeremy Fitzhardinge <jeremy@goop.org> wrote:

> This isn't correct, because it will set _PAGE_GLOBAL on 32-bit
> unconditionally. It needs to be something like:

hm, why is that a problem? Ah, the VDSO page must not be global-mapped,
right? It's getting late here, i should stop modifying the kernel ;)

> +#define GLOBAL_PGPROT(prot) __pgprot(prot | _PAGE_GLOBAL)
> +
> +#define PAGE_KERNEL GLOBAL_PGPROT(__PAGE_KERNEL)
> +#define PAGE_KERNEL_RO GLOBAL_PGPROT(__PAGE_KERNEL_RO)
> +#define PAGE_KERNEL_EXEC GLOBAL_PGPROT(__PAGE_KERNEL_EXEC)
> +#define PAGE_KERNEL_RX GLOBAL_PGPROT(__PAGE_KERNEL_RX)
> +#define PAGE_KERNEL_NOCACHE GLOBAL_PGPROT(__PAGE_KERNEL_NOCACHE)
> +#define PAGE_KERNEL_LARGE GLOBAL_PGPROT(__PAGE_KERNEL_LARGE)
> +#define PAGE_KERNEL_LARGE_EXEC GLOBAL_PGPROT(__PAGE_KERNEL_LARGE_EXEC)
> +#define PAGE_KERNEL_VSYSCALL GLOBAL_PGPROT(__PAGE_KERNEL_VSYSCALL)
> +#define PAGE_KERNEL_VSYSCALL_NOCACHE GLOBAL_PGPROT(__PAGE_KERNEL_VSYSCALL_NOCACHE)

i suspect you wanted to make GLOBAL_PGPROT a NOP on 32-bit?

but i think it would be better to just do this distinction for the
PAGE_KERNEL_VSYSCALL?

Ingo


\
 
 \ /
  Last update: 2008-01-09 02:19    [W:0.060 / U:0.372 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site