Commit 7b038b56 authored by Kent Overstreet's avatar Kent Overstreet

bcachefs: Fix failure to return error on misaligned dio write

This was reported as an error when running coreutils shred.
Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent 83208cbf
...@@ -609,8 +609,10 @@ ssize_t bch2_direct_write(struct kiocb *req, struct iov_iter *iter) ...@@ -609,8 +609,10 @@ ssize_t bch2_direct_write(struct kiocb *req, struct iov_iter *iter)
if (unlikely(ret)) if (unlikely(ret))
goto err_put_write_ref; goto err_put_write_ref;
if (unlikely((req->ki_pos|iter->count) & (block_bytes(c) - 1))) if (unlikely((req->ki_pos|iter->count) & (block_bytes(c) - 1))) {
ret = -EINVAL;
goto err_put_write_ref; goto err_put_write_ref;
}
inode_dio_begin(&inode->v); inode_dio_begin(&inode->v);
bch2_pagecache_block_get(inode); bch2_pagecache_block_get(inode);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment