Re: [PATCH 3/3] dax: Handle write faults more efficiently
From: Matthew Wilcox <hidden>
Date: 2016-01-27 04:17:10
Also in:
lkml
On Mon, Jan 25, 2016 at 09:38:19AM -0800, Andy Lutomirski wrote:
On Mon, Jan 25, 2016 at 9:25 AM, Matthew Wilcox [off-list ref] wrote:quoted
From: Matthew Wilcox <redacted> When we handle a write-fault on a DAX mapping, we currently insert a read-only mapping and then take the page fault again to convert it to a writable mapping. This is necessary for the case where we cover a hole with a read-only zero page, but when we have a data block already allocated, it is inefficient. Use the recently added vmf_insert_pfn_prot() to insert a writable mapping, even though the default VM flags say to use a read-only mapping.Conceptually, I like this. Do you need to make sure to do all the do_wp_page work, though? (E.g. we currently update mtime in there. Some day I'll fix that, but it'll be replaced with a set_bit to force a deferred mtime update.)
We update mtime in the ->fault handler of filesystems which support DAX
like this:
if (vmf->flags & FAULT_FLAG_WRITE) {
sb_start_pagefault(inode->i_sb);
file_update_time(vma->vm_file);
}
so I think we're covered.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>