Merge branch 'work.preadv2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull vfs cleanups from Al Viro: "More cleanups from Christoph" * 'work.preadv2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: nfsd: use RWF_SYNC fs: add RWF_DSYNC aand RWF_SYNC ceph: use generic_write_sync fs: simplify the generic_write_sync prototype fs: add IOCB_SYNC and IOCB_DSYNC direct-io: remove the offset argument to dio_complete direct-io: eliminate the offset argument to ->direct_IO xfs: eliminate the pos variable in xfs_file_dio_aio_write filemap: remove the pos argument to generic_file_direct_write filemap: remove pos variables in generic_file_read_iter
此提交包含在:
@@ -1186,7 +1186,7 @@ static ssize_t fuse_file_write_iter(struct kiocb *iocb, struct iov_iter *from)
|
||||
|
||||
if (iocb->ki_flags & IOCB_DIRECT) {
|
||||
loff_t pos = iocb->ki_pos;
|
||||
written = generic_file_direct_write(iocb, from, pos);
|
||||
written = generic_file_direct_write(iocb, from);
|
||||
if (written < 0 || !iov_iter_count(from))
|
||||
goto out;
|
||||
|
||||
@@ -2837,7 +2837,7 @@ static inline loff_t fuse_round_up(loff_t off)
|
||||
}
|
||||
|
||||
static ssize_t
|
||||
fuse_direct_IO(struct kiocb *iocb, struct iov_iter *iter, loff_t offset)
|
||||
fuse_direct_IO(struct kiocb *iocb, struct iov_iter *iter)
|
||||
{
|
||||
DECLARE_COMPLETION_ONSTACK(wait);
|
||||
ssize_t ret = 0;
|
||||
@@ -2848,6 +2848,7 @@ fuse_direct_IO(struct kiocb *iocb, struct iov_iter *iter, loff_t offset)
|
||||
struct inode *inode;
|
||||
loff_t i_size;
|
||||
size_t count = iov_iter_count(iter);
|
||||
loff_t offset = iocb->ki_pos;
|
||||
struct fuse_io_priv *io;
|
||||
bool is_sync = is_sync_kiocb(iocb);
|
||||
|
||||
|
新增問題並參考
封鎖使用者