On Thu, Aug 19, 2021 at 03:54:01PM -0700, Dan Williams wrote: > > static void *dax_insert_entry(struct xa_state *xas, struct vm_fault *vmf, > const struct iomap_iter *iter, void > *entry, pfn_t pfn, > unsigned long flags) > > > > { > > + struct address_space *mapping = vmf->vma->vm_file->f_mapping; > > void *new_entry = dax_make_entry(pfn, flags); > > + bool dirty = insert_flags & DAX_IF_DIRTY; > > + bool cow = insert_flags & DAX_IF_COW; > > ...and then calculate these flags from the source data. I'm just > reacting to "yet more flags". Except for the overly long line above that seems like a good idea. The iomap_iter didn't exist for most of the time this patch has been around.