Merge branch 'tip/x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into x86/mm

This commit is contained in:
Ingo Molnar 2009-02-20 18:51:43 +01:00
commit c9e1585b1b

View file

@ -645,6 +645,7 @@ static noinline int spurious_fault(unsigned long error_code,
pud_t *pud;
pmd_t *pmd;
pte_t *pte;
int ret;
/* Reserved-bit violation or user access to kernel space? */
if (error_code & (PF_USER | PF_RSVD))
@ -672,7 +673,17 @@ static noinline int spurious_fault(unsigned long error_code,
if (!pte_present(*pte))
return 0;
return spurious_fault_check(error_code, pte);
ret = spurious_fault_check(error_code, pte);
if (!ret)
return 0;
/*
* Make sure we have permissions in PMD
* If not, then there's a bug in the page tables.
*/
ret = spurious_fault_check(error_code, (pte_t *) pmd);
WARN_ONCE(!ret, "PMD has incorrect permission bits\n");
return ret;
}
/*