commit | 680bb946a1ae04fe0ff369a4965f76b48c07dc54 | [log] [tgz] |
---|---|---|
author | Abhi Das <adas@redhat.com> | Wed Nov 16 21:44:23 2016 -0600 |
committer | Al Viro <viro@zeniv.linux.org.uk> | Thu Nov 17 00:00:48 2016 -0500 |
tree | be2ca455a6186b86a08e3ab1c22d49748cc6ed75 | |
parent | 4a59015372840a6fc35d7fd40638a9d5dc3ec958 [diff] |
fix iov_iter_advance() for ITER_PIPE iov_iter_advance() needs to decrement iter->count by the number of bytes we'd moved beyond. Normal flavours do that, but ITER_PIPE doesn't and ITER_PIPE generic_file_read_iter() for O_DIRECT files ends up with a bogus fallback to page cache read, resulting in incorrect values for file offset and bytes read. Signed-off-by: Abhi Das <adas@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>