All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH]x86: make spurious_fault check correct pte bit
@ 2010-07-27  8:06 Shaohua Li
  2010-08-26 23:13 ` [tip:x86/mm] x86, mm: Make spurious_fault check explicitly check the PRESENT bit tip-bot for Shaohua Li
  0 siblings, 1 reply; 2+ messages in thread
From: Shaohua Li @ 2010-07-27  8:06 UTC (permalink / raw)
  To: lkml; +Cc: Ingo Molnar, Andrew Morton, H. Peter Anvin, Huang, Ying

pte_present() returns true even present bit isn't set but _PAGE_PROTNONE
(global bit) bit is set. While with CONFIG_DEBUG_PAGEALLOC, free pages have
global bit set but present bit clear. This patch makes we could catch
free pages access with CONFIG_DEBUG_PAGEALLOC enabled.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>

diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
index f627779..93afd78 100644
--- a/arch/x86/mm/fault.c
+++ b/arch/x86/mm/fault.c
@@ -893,7 +893,7 @@ spurious_fault(unsigned long error_code, unsigned long address)
 		return spurious_fault_check(error_code, (pte_t *) pmd);
 
 	pte = pte_offset_kernel(pmd, address);
-	if (!pte_present(*pte))
+	if (!(pte_flags(*pte) & _PAGE_PRESENT))
 		return 0;
 
 	ret = spurious_fault_check(error_code, pte);




^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-08-26 23:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-07-27  8:06 [PATCH]x86: make spurious_fault check correct pte bit Shaohua Li
2010-08-26 23:13 ` [tip:x86/mm] x86, mm: Make spurious_fault check explicitly check the PRESENT bit tip-bot for Shaohua Li

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.