summaryrefslogtreecommitdiffstats
path: root/mm/memory.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2001-03-09 20:33:35 +0000
committerRalf Baechle <ralf@linux-mips.org>2001-03-09 20:33:35 +0000
commit116674acc97ba75a720329996877077d988443a2 (patch)
tree6a3f2ff0b612ae2ee8a3f3509370c9e6333a53b3 /mm/memory.c
parent71118c319fcae4a138f16e35b4f7e0a6d53ce2ca (diff)
Merge with Linux 2.4.2.
Diffstat (limited to 'mm/memory.c')
-rw-r--r--mm/memory.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/memory.c b/mm/memory.c
index 7fc8de5eb..242981f72 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -858,6 +858,8 @@ static int do_wp_page(struct mm_struct *mm, struct vm_area_struct * vma,
UnlockPage(old_page);
/* FallThrough */
case 1:
+ if (PageReserved(old_page))
+ break;
flush_cache_page(vma, address);
establish_pte(vma, address, page_table, pte_mkyoung(pte_mkdirty(pte_mkwrite(pte))));
spin_unlock(&mm->page_table_lock);
@@ -1200,6 +1202,7 @@ int handle_mm_fault(struct mm_struct *mm, struct vm_area_struct * vma,
pgd_t *pgd;
pmd_t *pmd;
+ current->state = TASK_RUNNING;
pgd = pgd_offset(mm, address);
pmd = pmd_alloc(pgd, address);