Messages in this thread | | | Date | Tue, 05 Oct 2010 13:38:21 -0400 | From | Rik van Riel <> | Subject | Re: [PATCH 2/3] Retry page fault when blocking on disk transfer. |
| |
On 10/05/2010 03:53 AM, Michel Lespinasse wrote: > This change reduces mmap_sem hold times that are caused by waiting for > disk transfers when accessing file mapped VMAs. It introduces the > VM_FAULT_ALLOW_RETRY flag, which indicates that the call site wants > mmap_sem to be released if blocking on a pending disk transfer. > In that case, filemap_fault() returns the VM_FAULT_RETRY status bit > and do_page_fault() will then re-acquire mmap_sem and retry the page fault. > It is expected that the retry will hit the same page which will now be > cached, and thus it will complete with a low mmap_sem hold time. > > Signed-off-by: Michel Lespinasse<walken@google.com>
Acked-by: Rik van Riel <riel@redhat.com>
Looks like it should be relatively easy to do something similar in do_swap_page also.
| |