summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2015-12-08 12:22:47 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-01-31 11:23:40 -0800
commit57b7d61c2d89e3e0665b9cdcc8fb73b08d10f0c2 (patch)
treece2299319005c3ce03e5ac17be87f7206e844783
parent8885e7f3d76a9d42eb4fd97a3cfc5a8ac7f6f2ff (diff)
downloadlwn-57b7d61c2d89e3e0665b9cdcc8fb73b08d10f0c2.tar.gz
lwn-57b7d61c2d89e3e0665b9cdcc8fb73b08d10f0c2.zip
fix the regression from "direct-io: Fix negative return from dio read beyond eof"
commit 2d4594acbf6d8f75a27f3578476b6a27d8b13ebb upstream. Sure, it's better to bail out of past-the-eof read and return 0 than return a bogus negative value on such. Only we'd better make sure we are bailing out with 0 and not -ENOMEM... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--fs/direct-io.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/direct-io.c b/fs/direct-io.c
index 6bc4bacd8984..d83a021a659f 100644
--- a/fs/direct-io.c
+++ b/fs/direct-io.c
@@ -1165,6 +1165,7 @@ do_blockdev_direct_IO(struct kiocb *iocb, struct inode *inode,
if (dio->flags & DIO_LOCKING)
mutex_unlock(&inode->i_mutex);
kmem_cache_free(dio_cache, dio);
+ retval = 0;
goto out;
}