lkml.org 
[lkml]   [2005]   [Sep]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH mm] linear pte_file fix
My recent mm patch to give pte_ERROR in do_file_page unless VM_NONLINEAR
was incorrect. I was forgetting Oleg's patch to the populate functions,
which forces install_file_pte when MAP_POPULATE + MAP_NONBLOCK but page
not in cache (in case an existing nonlinear entry needs removing). But
that's only necessary in the VM_NONLINEAR case: let's keep the strict
check in do_file_page, and adjust filemap_populate and shmem_populate.

Signed-off-by: Hugh Dickins <hugh@veritas.com>

--- 2.6.14-rc2-mm1/mm/filemap.c 2005-09-22 12:32:03.000000000 +0100
+++ linux/mm/filemap.c 2005-09-28 20:38:20.000000000 +0100
@@ -1542,7 +1542,7 @@ repeat:
page_cache_release(page);
return err;
}
- } else {
+ } else if (vma->vm_flags & VM_NONLINEAR) {
/* No page was found just because we can't read it in now (being
* here implies nonblock != 0), but the page may exist, so set
* the PTE to fault it in later. */
--- 2.6.14-rc2-mm1/mm/shmem.c 2005-09-22 12:32:04.000000000 +0100
+++ linux/mm/shmem.c 2005-09-28 20:40:23.000000000 +0100
@@ -1201,7 +1201,7 @@ static int shmem_populate(struct vm_area
page_cache_release(page);
return err;
}
- } else {
+ } else if (vma->vm_flags & VM_NONLINEAR) {
/* No page was found just because we can't read it in
* now (being here implies nonblock != 0), but the page
* may exist, so set the PTE to fault it in later. */
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-09-28 22:04    [W:2.478 / U:0.004 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site