vfs/xfs: directio updates to ease COW handling V2

Christoph Hellwig
2016-02-03T18:40:23Z

The first patch ensures ->end_io is always called for direct I/O requests
that pass it in, even if there was a zero length write, or if an error
occured. The existing users have been updated to ignore it, but XFS
will make use of it in the future, and a comment in ext4 suggests it
might be useful for it as well.

The other two simplify the XFS direct I/O code.

Changes since V1:
- allow ->end_io to return errors
- a comment spelling fix