Re: [PATCH 3/3] dax: Handle write faults more efficiently

From: Andy Lutomirski
Date: Mon Jan 25 2016 - 12:38:44 EST


On Mon, Jan 25, 2016 at 9:25 AM, Matthew Wilcox
<matthew.r.wilcox@xxxxxxxxx> wrote:
> From: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
>
> 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.)

--Andy