mbox series

[git,pull] vfs.git pile 4 - beginning of iov_iter series

Message ID YurOwiZoOKkj+kNW@ZenIV (mailing list archive)
State New, archived
Headers show
Series [git,pull] vfs.git pile 4 - beginning of iov_iter series | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git tags/pull-work.iov_iter-base

Message

Al Viro Aug. 3, 2022, 7:38 p.m. UTC
The following changes since commit f2906aa863381afb0015a9eb7fefad885d4e5a56:

  Linux 5.19-rc1 (2022-06-05 17:18:54 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git tags/pull-work.iov_iter-base

for you to fetch changes up to dd45ab9dd28c82fc495d98cd9788666fd8d76b99:

  first_iovec_segment(): just return address (2022-07-06 20:32:34 -0400)

	Two trivial conflicts - one in block/fops.c::dio_bio_write_op()
(one-liner in this series applied to corresponding line in mainline),
another in io_rw_init_file() which got moved from fs/io_uring.c to
io_uring/rw.c.

----------------------------------------------------------------
iov_iter work, part 1 - isolated cleanups and optimizations.

	One of the goals is to reduce the overhead of using ->read_iter()
and ->write_iter() instead of ->read()/->write(); new_sync_{read,write}()
has a surprising amount of overhead, in particular inside iocb_flags().
That's why the beginning of the series is in this pile; it's not directly
iov_iter-related, but it's a part of the same work...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

----------------------------------------------------------------
Al Viro (13):
      No need of likely/unlikely on calls of check_copy_size()
      teach iomap_dio_rw() to suppress dsync
      btrfs: use IOMAP_DIO_NOSYNC
      struct file: use anonymous union member for rcuhead and llist
      iocb: delay evaluation of IS_SYNC(...) until we want to check IOCB_DSYNC
      keep iocb_flags() result cached in struct file
      copy_page_{to,from}_iter(): switch iovec variants to generic
      iov_iter_bvec_advance(): don't bother with bvec_iter
      iov_iter_get_pages{,_alloc}(): cap the maxsize with MAX_RW_COUNT
      iov_iter: lift dealing with maxpages out of first_{iovec,bvec}_segment()
      iov_iter: first_{iovec,bvec}_segment() - simplify a bit
      iov_iter: massage calling conventions for first_{iovec,bvec}_segment()
      first_iovec_segment(): just return address

 arch/powerpc/include/asm/uaccess.h |   2 +-
 arch/s390/include/asm/uaccess.h    |   4 +-
 block/fops.c                       |   2 +-
 drivers/nvme/target/io-cmd-file.c  |   2 +-
 fs/aio.c                           |   2 +-
 fs/btrfs/file.c                    |  19 +--
 fs/btrfs/inode.c                   |   3 +-
 fs/direct-io.c                     |   2 +-
 fs/fcntl.c                         |   1 +
 fs/file_table.c                    |  17 +--
 fs/fuse/file.c                     |   2 +-
 fs/io_uring.c                      |   2 +-
 fs/iomap/direct-io.c               |  19 +--
 fs/open.c                          |   1 +
 fs/zonefs/super.c                  |   2 +-
 include/linux/fs.h                 |  21 +--
 include/linux/iomap.h              |   6 +
 include/linux/uaccess.h            |   4 +-
 include/linux/uio.h                |  15 +-
 lib/iov_iter.c                     | 283 +++++++------------------------------
 20 files changed, 113 insertions(+), 296 deletions(-)

Comments

pr-tracker-bot@kernel.org Aug. 3, 2022, 9:13 p.m. UTC | #1
The pull request you sent on Wed, 3 Aug 2022 20:38:42 +0100:

> git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git tags/pull-work.iov_iter-base

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/5264406cdb66c7003eb3edf53c9773b1b20611b9

Thank you!