]> www.infradead.org Git - users/jedix/linux-maple.git/commit
direct-io: always call ->end_io if non-NULL
authorChristoph Hellwig <hch@lst.de>
Fri, 28 Apr 2017 01:27:09 +0000 (18:27 -0700)
committerChuck Anderson <chuck.anderson@oracle.com>
Sun, 28 May 2017 02:44:15 +0000 (19:44 -0700)
commita27867b807d3771846e1cf6ae3052a95756b9753
tree71bcc916b136067acaea6dd30545ae89eecc77e6
parente1c7146df8fea8179fd24f29b721a181a74f6d83
direct-io: always call ->end_io if non-NULL

This way we can pass back errors to the file system, and allow for
cleanup required for all direct I/O invocations.

Also allow the ->end_io handlers to return errors on their own, so that
I/O completion errors can be passed on to the callers.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
(cherry-picked commit from 187372a3b9faff68ed61c291d0135e6739e0dbdf)

Orabug: 24393811
Conflicts:
    The change in the return type of the function dio_iodone_t
broke the KABI. Hence, the original function return type is wrapped
around under the flag __GENKSYMS__

Signed-off-by: Ashok Vairavan <ashok.vairavan@oracle.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
fs/dax.c
fs/direct-io.c
fs/ext4/inode.c
fs/ocfs2/aops.c
fs/xfs/xfs_aops.c
include/linux/fs.h