From 12e8dc08f2b4b21911447b22f39362e70a787452 Mon Sep 17 00:00:00 2001 From: Paolo 'Blaisorblade' Giarrusso Date: Sun, 13 Nov 2005 16:07:04 -0800 Subject: [PATCH] --- yaml --- r: 14059 b: refs/heads/master c: cbc24afa82106b67df804cb434739e4382eecd9a h: refs/heads/master i: 14057: b000cfc7a64845505bb5e39cd33fafe7cfbd7ed6 14055: 6deb8b1c936eec097c209f75dd4282601bd587ca v: v3 --- [refs] | 2 +- trunk/arch/um/kernel/trap_kern.c | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index ebc648715918..86ebc45cebb3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2ab23c95a0b77d45dc764dd4aed48fe6e8906e59 +refs/heads/master: cbc24afa82106b67df804cb434739e4382eecd9a diff --git a/trunk/arch/um/kernel/trap_kern.c b/trunk/arch/um/kernel/trap_kern.c index 95c8f8733baf..0d4c10a73607 100644 --- a/trunk/arch/um/kernel/trap_kern.c +++ b/trunk/arch/um/kernel/trap_kern.c @@ -95,7 +95,16 @@ int handle_page_fault(unsigned long address, unsigned long ip, pte = pte_offset_kernel(pmd, address); } while(!pte_present(*pte)); err = 0; + /* The below warning was added in place of + * pte_mkyoung(); if (is_write) pte_mkdirty(); + * If it's triggered, we'd see normally a hang here (a clean pte is + * marked read-only to emulate the dirty bit). + * However, the generic code can mark a PTE writable but clean on a + * concurrent read fault, triggering this harmlessly. So comment it out. + */ +#if 0 WARN_ON(!pte_young(*pte) || (is_write && !pte_dirty(*pte))); +#endif flush_tlb_page(vma, address); out: up_read(&mm->mmap_sem);