Thread (41 messages) 41 messages, 4 authors, 2016-10-12

Re: [PATCH v5 13/17] dax: dax_iomap_fault() needs to call iomap_end()

From: Ross Zwisler <hidden>
Date: 2016-10-10 22:05:50
Also in: linux-fsdevel, linux-mm, linux-xfs, lkml, nvdimm

On Mon, Oct 10, 2016 at 05:50:04PM +0200, Christoph Hellwig wrote:
On Fri, Oct 07, 2016 at 03:09:00PM -0600, Ross Zwisler wrote:
quoted
Currently iomap_end() doesn't do anything for DAX page faults for both ext2
and XFS.  ext2_iomap_end() just checks for a write underrun, and
xfs_file_iomap_end() checks to see if it needs to finish a delayed
allocation.  However, in the future iomap_end() calls might be needed to
make sure we have balanced allocations, locks, etc.  So, add calls to
iomap_end() with appropriate error handling to dax_iomap_fault().
Is there a way to just have a single call to iomap_end at the end of
the function, after which we just return a previosuly setup return
value?

e.g.

out:
	if (ops->iomap_end) {
		error = ops->iomap_end(inode, pos, PAGE_SIZE,
				PAGE_SIZE, flags, &iomap);
	}

	if (error == -ENOMEM)
		return VM_FAULT_OOM | major;
	if (error < 0 && error != -EBUSY)
		return VM_FAULT_SIGBUS | major;
	return ret;
Sure, will do.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help