From: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx> In recent tests of the O_DIRECT code, a number of bugs were discovered in the error codepaths, some of which were shown to result in data corruption. The tests involved using pNFS flexfiles with 3-way mirroring, and then shutting down one of the data servers. When the data was later re-read from the server, it was shown to not match the original data. --- v1 - NFS: Fix error handling for O_DIRECT write scheduling v2 - Fixes for incorrect commit info Fixes for O_DIRECT accounting O_DIRECT locking issues Fix write scheduling issues Trond Myklebust (5): NFS: Fix error handling for O_DIRECT write scheduling NFS: Fix O_DIRECT locking issues NFS: More O_DIRECT accounting fixes for error paths NFS: Use the correct commit info in nfs_join_page_group() NFS: More fixes for nfs_direct_write_reschedule_io() fs/nfs/direct.c | 134 +++++++++++++++++++++++++++------------ fs/nfs/write.c | 23 +++---- include/linux/nfs_page.h | 4 +- 3 files changed, 108 insertions(+), 53 deletions(-) -- 2.41.0