Re: [PATCH 4 of 4] x86: mask NX from pte_pfn

From: Hugh Dickins
Date: Fri Jan 18 2008 - 08:54:44 EST


On Tue, 15 Jan 2008, Jeremy Fitzhardinge wrote:
> In 32-bit PAE, mask NX from pte_pfn, since it isn't part of the PFN.
> This code is due for unification anyway, but this fixes a latent bug.
>
> Signed-off-by: Jeremy Fitzhardinge <jeremy@xxxxxxxxxxxxx>
>
> ---
> include/asm-x86/pgtable-3level.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/asm-x86/pgtable-3level.h b/include/asm-x86/pgtable-3level.h
> --- a/include/asm-x86/pgtable-3level.h
> +++ b/include/asm-x86/pgtable-3level.h
> @@ -139,7 +139,7 @@ static inline int pte_none(pte_t pte)
>
> static inline unsigned long pte_pfn(pte_t pte)
> {
> - return pte_val(pte) >> PAGE_SHIFT;
> + return (pte_val(pte) >> PAGE_SHIFT) & ~_PAGE_NX;
> }
>
> /*

Shouldn't that be

return (pte_val(pte) & ~_PAGE_NX) >> PAGE_SHIFT;

? Hugh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/