[git pull] vfs.git

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The first vfs pile, with deep apologies for being very late in this window.
Assorted cleanups and fixes, plus a large preparatory part of iov_iter work.
There's a lot more of that, but it'll probably go into the next merge window
- it *does* shape up nicely, removes a lot of boilerplate, gets rid of
locking inconsistencie between aio_write and splice_write and I hope to get
Kent's direct-io rewrite merged into the same queue, but some of the stuff
after this point is having (mostly trivial) conflicts with the things already
merged into mainline and with some I want more testing.

This one passes LTP and xfstests without regressions, in addition to usual
beating.  BTW, readahead02 in ltp syscalls testsuite has started giving
failures since "mm/readahead.c: fix readahead failure for memoryless NUMA
nodes and limit readahead pages" - might be a false positive, might be
a real regression...

The conflicts are trivial (variable added in mainline next to one removed
in this series, a function removed in mainline next to several removed in
this, new object added in mm/Makefile, a function call in fs/ceph/file.c
replaced with several lines equivalent to it next to an if that was added
after that call in mainline).  I've pushed a resolved variant into
vfs.git#proposed-merge, but that's mostly for verification purposes.

There will be another pile, with bits and pieces from other folks; I want
to deal with the bulk of that mess first...

The branch itself is in the usual place -
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git for-linus

Shortlog:
Al Viro (61):
      smarter propagate_mnt()
      reduce m_start() cost...
      usbip: don't open-code sockfd_lookup/sockfd_put
      vhost: don't open-code sockfd_put()
      switch nbd to sockfd_lookup/sockfd_put
      ncpfs: switch to sockfd_lookup()/sockfd_put()
      don't bother with {get,put}_write_access() on non-regular files
      get rid of DEBUG_WRITECOUNT
      fold __get_file_write_access() into its only caller
      mark struct file that had write access grabbed by open()
      tidy do_dentry_open() up a bit
      get_write_access() is inlined, exporting it is pointless
      namei.c: move EXPORT_SYMBOL to corresponding definitions
      get rid of files_defer_init()
      lustre: generic_readlink() is just fine there, TYVM...
      new helper: readlink_copy()
      ntfs: don't put NULL into ->i_op/->i_fop
      get rid of pointless checks for NULL ->i_op
      cifs: ->rename() without ->lookup() makes no sense
      mn10300: kmap_atomic() returns void *, not unsigned long...
      fuse/dev: use atomic maps
      pipe: kill ->map() and ->unmap()
      switch ->is_partially_uptodate() to saner arguments
      callers of iov_copy_from_user_atomic() don't need pagecache_disable()
      do_shmem_file_read(): call file_read_actor() directly
      introduce copy_page_to_iter, kill loop over iovec in generic_file_aio_read()
      cifs_iovec_read(): resubmit shouldn't restart the loop
      switch pipe_read() to copy_page_to_iter()
      switch vmsplice_to_user() to copy_page_to_iter()
      cifs_iovec_read: keep iov_iter between the calls of cifs_readdata_to_iov()
      fold cifs_iovec_read() into its (only) caller
      read_code(): go through vfs_read() instead of calling the method directly
      untangling process_vm_..., part 1
      untangling process_vm_..., part 2
      untangling process_vm_..., part 3
      untangling process_vm_..., part 4
      process_vm_access: switch to iov_iter
      process_vm_access: switch to copy_page_to_iter/iov_iter_copy_from_user
      process_vm_access: take get_user_pages/put_pages one level up
      process_vm_rw_pages(): pass accurate amount of bytes
      process_vm_access: don't bother with returning the amounts of bytes copied
      process_vm_access: tidy up a bit
      take iov_iter stuff to mm/iov_iter.c
      ocfs2: don't open-code kernel_sendmsg()
      lustre: switch to kernel_sendmsg()
      constify blk_rq_map_user_iov() and friends
      drbd: don't open-code kernel_recvmsg()
      ocfs2: don't open-code kernel_recvmsg()
      lustre: don't open-code kernel_recvmsg()
      kill the 4th argument of __generic_file_aio_write()
      kill the 5th argument of generic_file_buffered_write()
      btrfs_file_aio_write(): get rid of ppos
      generic_file_direct_write(): get rid of ppos argument
      export generic_perform_write(), start getting rid of generic_file_buffer_write()
      xfs_file_buffered_aio_write(): switch to generic_perform_write()
      ceph_aio_write(): switch to generic_perform_write()
      ocfs2_file_aio_write(): switch to generic_perform_write()
      kill generic_file_buffered_write()
      ceph_sync_{,direct_}write: fix an oops on ceph_osdc_new_request() failure
      cifs: fix the race in cifs_writev()
      missing bits of "splice: fix racy pipe->buffers uses"

David Howells (1):
      VFS: Make delayed_free() call free_vfsmnt()

Kent Overstreet (1):
      iov_iter: Move iov_iter to uio.h

Diffstat:
 Documentation/filesystems/Locking                  |    2 +-
 Documentation/filesystems/vfs.txt                  |    2 +-
 arch/mn10300/include/asm/highmem.h                 |    4 +-
 arch/powerpc/configs/ppc6xx_defconfig              |    1 -
 arch/powerpc/configs/ps3_defconfig                 |    1 -
 arch/s390/configs/default_defconfig                |    1 -
 arch/sh/configs/rsk7203_defconfig                  |    1 -
 arch/xtensa/configs/iss_defconfig                  |    1 -
 arch/xtensa/configs/s6105_defconfig                |    1 -
 block/blk-map.c                                    |    2 +-
 drivers/block/drbd/drbd_receiver.c                 |   12 +-
 drivers/block/nbd.c                                |   48 ++-
 drivers/char/virtio_console.c                      |    4 +-
 .../lustre/lnet/klnds/socklnd/socklnd_lib-linux.c  |   60 +---
 .../lustre/lustre/libcfs/linux/linux-tcpip.c       |   24 +-
 drivers/staging/lustre/lustre/llite/symlink.c      |   23 +-
 drivers/staging/usbip/stub_dev.c                   |    8 +-
 drivers/staging/usbip/usbip_common.c               |   25 --
 drivers/staging/usbip/usbip_common.h               |    1 -
 drivers/staging/usbip/vhci_hcd.c                   |    4 +-
 drivers/staging/usbip/vhci_sysfs.c                 |    6 +-
 drivers/vhost/net.c                                |   14 +-
 fs/bio.c                                           |   10 +-
 fs/block_dev.c                                     |    2 +-
 fs/btrfs/file.c                                    |   16 +-
 fs/buffer.c                                        |    6 +-
 fs/cachefiles/bind.c                               |    1 -
 fs/cachefiles/namei.c                              |    3 +-
 fs/ceph/file.c                                     |   12 +-
 fs/cifs/cifsfs.c                                   |    1 -
 fs/cifs/file.c                                     |  128 +++-----
 fs/exec.c                                          |    2 +-
 fs/ext4/file.c                                     |    2 +-
 fs/file.c                                          |   11 +-
 fs/file_table.c                                    |   43 +--
 fs/fuse/dev.c                                      |   14 +-
 fs/fuse/file.c                                     |    5 +-
 fs/mount.h                                         |    5 +-
 fs/namei.c                                         |   67 ++--
 fs/namespace.c                                     |   56 ++--
 fs/ncpfs/inode.c                                   |   50 +--
 fs/ncpfs/ncp_fs_sb.h                               |    2 -
 fs/ntfs/inode.c                                    |    2 -
 fs/ocfs2/cluster/tcp.c                             |   49 +--
 fs/ocfs2/file.c                                    |    9 +-
 fs/open.c                                          |   68 +---
 fs/pipe.c                                          |  133 +-------
 fs/pnode.c                                         |  198 ++++++-----
 fs/pnode.h                                         |    3 +
 fs/proc/namespaces.c                               |   14 +-
 fs/proc/self.c                                     |    2 +-
 fs/proc_namespace.c                                |    1 +
 fs/splice.c                                        |  126 ++-----
 fs/udf/file.c                                      |    2 +-
 fs/xfs/xfs_file.c                                  |   13 +-
 fs/xfs/xfs_ioctl.c                                 |   28 +-
 include/linux/bio.h                                |    5 +-
 include/linux/blkdev.h                             |    4 +-
 include/linux/buffer_head.h                        |    4 +-
 include/linux/fdtable.h                            |    2 -
 include/linux/fs.h                                 |   97 +-----
 include/linux/mount.h                              |    3 +
 include/linux/nbd.h                                |    3 +-
 include/linux/pipe_fs_i.h                          |   19 --
 include/linux/uio.h                                |   52 +++
 kernel/relay.c                                     |    4 +-
 kernel/trace/trace.c                               |    8 +-
 lib/Kconfig.debug                                  |   10 -
 mm/Makefile                                        |    2 +-
 mm/filemap.c                                       |  344 ++++----------------
 mm/iov_iter.c                                      |  224 +++++++++++++
 mm/process_vm_access.c                             |  250 +++++---------
 mm/shmem.c                                         |   79 ++---
 security/integrity/evm/evm_crypto.c                |    2 +-
 security/integrity/evm/evm_main.c                  |    2 +-
 security/tomoyo/realpath.c                         |    4 +-
 76 files changed, 910 insertions(+), 1537 deletions(-)
 create mode 100644 mm/iov_iter.c
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux