[git pull] vfs.git

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

 



All kinds of stuff this time around; some more notable parts:
	* RCU'd vfsmounts handling
	* new primitives for coredump handling
	* files_lock is gone
	* Bruce's delegations handling series
	* exportfs fixes
plus misc stuff all over the place.  There's one trivial conflict with
mainline - drivers/usb/core/file.c (whitespace noise on mainline side
vs. switch to replace_fops() on vfs.git one); no other conflicts.  Please,
pull from
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git for-linus

Shortlog:
Al Viro (72):
      9p: make v9fs_cache_inode_{get,put,set}_cookie empty inlines for !9P_CACHEFS
      ecryptfs: check DCACHE_OP_REVALIDATE instead of ->d_op
      ecryptfs: don't leave RCU pathwalk immediately
      ecryptfs: get rid of ecryptfs_set_dentry_lower{,_mnt}
      ecryptfs: ->lower_path.dentry is never NULL
      libfs: get exports to definitions of objects being exported...
      new helper: kfree_put_link()
      befs: split symlink iops in two - for short and long symlinks resp.
      nfs: use %p[dD] instead of open-coded (and often racy) equivalents
      nfsd: switch to %p[dD]
      sunrpc: switch to %pd
      ubifs: switch to %pd
      ncpfs: switch to %p[dD]
      put_mnt_ns(): use drop_collected_mounts()
      consolidate the reassignments of ->f_op in ->open() instances
      dmxdev: get rid of pointless clearing ->f_op
      rtl8188eu: remove dead code
      file->f_op is never NULL...
      initialize namespace_sem statically
      fs_is_visible only needs namespace_sem held shared
      dup_mnt_ns(): get rid of pointless grabbing of vfsmount_lock
      do_remount(): pull touch_mnt_namespace() up
      fold mntfree() into mntput_no_expire()
      fs/namespace.c: bury long-dead define
      finish_automount() doesn't need vfsmount_lock for removal from expiry list
      mnt_set_expiry() doesn't need vfsmount_lock
      fold dup_mnt_ns() into its only surviving caller
      namespace.c: get rid of mnt_ghosts
      don't bother with vfsmount_lock in mounts_poll()
      new helpers: lock_mount_hash/unlock_mount_hash
      isofs: don't pass dentry to isofs_hash{i,}_common()
      uninline destroy_super(), consolidate alloc_super()
      split __lookup_mnt() in two functions
      move taking vfsmount_lock down into prepend_path()
      make freeing super_block rcu-delayed
      hpfs: make freeing sbi and codetables rcu-delayed
      adfs: delayed freeing of sbi
      autofs4: make freeing sbi rcu-delayed
      cifs: rcu-delay unload_nls() and freeing sbi
      fat: rcu-delay unloading nls and freeing sbi
      ncpfs: rcu-delay unload_nls() and freeing ncp_server
      pid_namespace: make freeing struct pid_namespace rcu-delayed
      fuse: rcu-delay freeing fuse_conn
      switch shrink_dcache_for_umount() to use of d_walk()
      RCU'd vfsmounts
      get rid of {lock,unlock}_rcu_walk()
      get rid of s_files and files_lock
      fold __d_shrink() into its only remaining caller
      coda_revalidate_inode(): switch to passing inode...
      no need to keep brlock macros anymore...
      restore 32bit aout coredump
      new helper: dump_emit()
      switch elf_core_write_extra_phdrs() to dump_emit()
      switch elf_core_write_extra_data() to dump_emit()
      binfmt_elf: convert writing actual dump pages to dump_emit()
      convert the rest of binfmt_elf_fdpic to dump_emit()
      switch elf_coredump_extra_notes_write() to dump_emit()
      aout: switch to dump_emit
      binfmt_elf: count notes towards coredump limit
      make dump_emit() use vfs_write() instead of banging at ->f_op->write directly
      dump_skip(): dump_seek() replacement taking coredump_params
      spufs: get rid of dump_emit() wrappers
      new helper: dump_align()
      take anon inode allocation to libfs.c
      ... and kill anon_inode_getfile_private()
      constify copy_siginfo_to_user{,32}()
      constify do_coredump() argument
      elf{,_fdpic} coredump: get rid of pointless if (siginfo->si_signo)
      iget/iget5: don't bother with ->i_lock until we find a match
      qnx4: i_sb is never NULL
      ocfs2: get rid of impossible checks
      ecryptfs: ->f_op is never NULL

Benjamin LaHaise (1):
      rework aio migrate pages to use aio fs

Christoph Hellwig (1):
      exportfs: BUG_ON in crazy corner case

David Howells (1):
      VFS: Put a small type field into struct dentry::d_flags

J. Bruce Fields (25):
      vfs: split out vfs_getattr_nosec
      exportfs: fix 32-bit nfsd handling of 64-bit inode numbers
      dcache: use IS_ROOT to decide where dentry is hashed
      dcache: Don't set DISCONNECTED on "pseudo filesystem" dentries
      dcache: don't clear DCACHE_DISCONNECTED too early
      dcache: fix outdated DCACHE_NEED_LOOKUP comment
      exportfs: more detailed comment for path_reconnect
      exportfs: clear DISCONNECTED on all parents sooner
      exportfs: stop retrying once we race with rename/remove
      exportfs: eliminate unused "noprogress" counter
      exportfs: move most of reconnect_path to helper function
      exportfs: better variable name
      exportfs: fix quadratic behavior in filehandle lookup
      vfs: pull ext4's double-i_mutex-locking into common code
      vfs: don't use PARENT/CHILD lock classes for non-directories
      vfs: rename I_MUTEX_QUOTA now that it's not used for quotas
      vfs: take i_mutex on renamed file
      locks: introduce new FL_DELEG lock flag
      locks: implement delegations
      namei: minor vfs_unlink cleanup
      locks: break delegations on unlink
      locks: helper functions for delegation breaking
      locks: break delegations on rename
      locks: break delegations on link
      locks: break delegations on any attribute modification

Miklos Szeredi (1):
      vfs: introduce d_instantiate_no_diralias()

Diffstat:
 Documentation/filesystems/directory-locking        |   31 ++-
 Documentation/filesystems/porting                  |    8 +
 arch/arm64/kernel/signal32.c                       |    2 +-
 arch/ia64/kernel/elfcore.c                         |   12 +-
 arch/ia64/kernel/signal.c                          |    2 +-
 arch/mips/kernel/signal32.c                        |    2 +-
 arch/parisc/kernel/signal32.c                      |    2 +-
 arch/parisc/kernel/signal32.h                      |    2 +-
 arch/powerpc/include/asm/spu.h                     |    3 +-
 arch/powerpc/kernel/signal_32.c                    |    2 +-
 arch/powerpc/platforms/cell/spu_syscalls.c         |    5 +-
 arch/powerpc/platforms/cell/spufs/coredump.c       |   89 ++----
 arch/powerpc/platforms/cell/spufs/spufs.h          |    3 +-
 arch/s390/kernel/compat_signal.c                   |    2 +-
 arch/sparc/kernel/signal32.c                       |    2 +-
 arch/tile/kernel/compat_signal.c                   |    2 +-
 arch/x86/ia32/ia32_aout.c                          |   86 +++---
 arch/x86/ia32/ia32_signal.c                        |    2 +-
 arch/x86/um/elfcore.c                              |   15 +-
 drivers/base/devtmpfs.c                            |    6 +-
 drivers/char/misc.c                                |   12 +-
 drivers/gpu/drm/drm_fops.c                         |   17 +-
 drivers/media/dvb-core/dmxdev.c                    |    4 -
 drivers/media/dvb-core/dvbdev.c                    |   19 +-
 drivers/mtd/nand/nandsim.c                         |    2 +-
 drivers/staging/comedi/comedi_compat32.c           |    3 -
 .../lustre/lustre/include/linux/lustre_compat25.h  |    4 +-
 drivers/staging/lustre/lustre/llite/namei.c        |    2 +-
 drivers/staging/lustre/lustre/lvfs/lvfs_linux.c    |    2 +-
 drivers/staging/rtl8188eu/include/osdep_service.h  |    5 -
 drivers/staging/rtl8188eu/os_dep/osdep_service.c   |  208 -----------
 drivers/usb/core/file.c                            |   16 +-
 fs/9p/cache.h                                      |   12 +
 fs/9p/vfs_file.c                                   |    2 -
 fs/9p/vfs_inode.c                                  |    6 -
 fs/9p/vfs_inode_dotl.c                             |    4 -
 fs/adfs/adfs.h                                     |    9 +-
 fs/adfs/super.c                                    |    3 +-
 fs/aio.c                                           |   63 +++-
 fs/anon_inodes.c                                   |  114 +------
 fs/attr.c                                          |   25 ++-
 fs/autofs4/autofs_i.h                              |    3 +-
 fs/autofs4/dev-ioctl.c                             |    6 -
 fs/autofs4/inode.c                                 |   13 +-
 fs/befs/linuxvfs.c                                 |   61 ++--
 fs/binfmt_aout.c                                   |   13 +-
 fs/binfmt_elf.c                                    |  127 +++----
 fs/binfmt_elf_fdpic.c                              |  152 +++------
 fs/binfmt_em86.c                                   |    2 +-
 fs/cachefiles/interface.c                          |    4 +-
 fs/cachefiles/namei.c                              |    4 +-
 fs/char_dev.c                                      |    6 +-
 fs/cifs/cifs_fs_sb.h                               |    1 +
 fs/cifs/cifsfs.c                                   |    2 +-
 fs/cifs/cifsfs.h                                   |    2 -
 fs/cifs/connect.c                                  |   10 +-
 fs/cifs/link.c                                     |    7 -
 fs/coda/coda_linux.h                               |    2 +-
 fs/coda/dir.c                                      |    6 +-
 fs/coda/file.c                                     |    6 +-
 fs/coda/inode.c                                    |    2 +-
 fs/compat_ioctl.c                                  |    4 +-
 fs/coredump.c                                      |   71 +++--
 fs/dcache.c                                        |  342 ++++++++++--------
 fs/ecryptfs/dentry.c                               |   29 +-
 fs/ecryptfs/ecryptfs_kernel.h                      |   19 +-
 fs/ecryptfs/file.c                                 |    8 +-
 fs/ecryptfs/inode.c                                |   29 +-
 fs/ecryptfs/main.c                                 |    3 +-
 fs/eventpoll.c                                     |    2 +-
 fs/exec.c                                          |   35 +-
 fs/exportfs/expfs.c                                |  269 ++++++++------
 fs/ext4/ext4.h                                     |    2 -
 fs/ext4/ioctl.c                                    |    4 +-
 fs/ext4/move_extent.c                              |   40 +--
 fs/fat/fat.h                                       |    1 +
 fs/fat/inode.c                                     |   19 +-
 fs/fcntl.c                                         |    5 +-
 fs/file_table.c                                    |  129 +-------
 fs/fs-writeback.c                                  |    1 +
 fs/fuse/cuse.c                                     |    2 +-
 fs/fuse/dir.c                                      |   40 +--
 fs/fuse/fuse_i.h                                   |    5 +-
 fs/fuse/inode.c                                    |    4 +-
 fs/gfs2/inode.c                                    |    9 +-
 fs/hpfs/hpfs_fn.h                                  |    1 +
 fs/hpfs/namei.c                                    |    2 +-
 fs/hpfs/super.c                                    |   28 +-
 fs/inode.c                                         |   62 +++-
 fs/internal.h                                      |    7 -
 fs/ioctl.c                                         |    4 +-
 fs/isofs/inode.c                                   |   12 +-
 fs/libfs.c                                         |  122 +++++--
 fs/locks.c                                         |   69 +++-
 fs/mount.h                                         |   20 +-
 fs/namei.c                                         |  322 ++++++++++-------
 fs/namespace.c                                     |  390 ++++++++++----------
 fs/ncpfs/dir.c                                     |   55 +--
 fs/ncpfs/file.c                                    |   12 +-
 fs/ncpfs/inode.c                                   |   19 +-
 fs/ncpfs/ncp_fs_sb.h                               |    2 +-
 fs/nfs/dir.c                                       |  119 +++----
 fs/nfs/direct.c                                    |   17 +-
 fs/nfs/file.c                                      |  117 +++----
 fs/nfs/namespace.c                                 |    5 +-
 fs/nfs/nfs3proc.c                                  |    8 +-
 fs/nfs/nfs4file.c                                  |    4 +-
 fs/nfs/nfs4namespace.c                             |    7 +-
 fs/nfs/nfs4proc.c                                  |    5 +-
 fs/nfs/proc.c                                      |    8 +-
 fs/nfs/unlink.c                                    |    9 +-
 fs/nfs/write.c                                     |    6 +-
 fs/nfsd/nfs4recover.c                              |   12 +-
 fs/nfsd/nfs4state.c                                |   17 +-
 fs/nfsd/nfsfh.c                                    |   28 +-
 fs/nfsd/nfsfh.h                                    |    4 +-
 fs/nfsd/vfs.c                                      |   23 +-
 fs/ntfs/inode.c                                    |    2 +-
 fs/ocfs2/inode.c                                   |   10 -
 fs/open.c                                          |   32 ++-
 fs/pnode.c                                         |   13 +-
 fs/proc/self.c                                     |   10 +-
 fs/proc_namespace.c                                |    8 +-
 fs/qnx4/namei.c                                    |    4 -
 fs/read_write.c                                    |   25 +-
 fs/readdir.c                                       |    2 +-
 fs/select.c                                        |    4 +-
 fs/splice.c                                        |    6 +-
 fs/stat.c                                          |   31 ++-
 fs/super.c                                         |  201 ++++------
 fs/sync.c                                          |    2 +-
 fs/ubifs/dir.c                                     |   41 +--
 fs/ubifs/journal.c                                 |    6 +-
 fs/ubifs/xattr.c                                   |   16 +-
 fs/utimes.c                                        |    9 +-
 include/asm-generic/siginfo.h                      |    2 +-
 include/linux/anon_inodes.h                        |    3 -
 include/linux/binfmts.h                            |    3 +-
 include/linux/compat.h                             |    2 +-
 include/linux/coredump.h                           |   10 +-
 include/linux/dcache.h                             |  104 +++++-
 include/linux/elf.h                                |    6 +-
 include/linux/elfcore.h                            |    7 +-
 include/linux/fs.h                                 |  106 ++++--
 include/linux/lglock.h                             |   10 -
 include/linux/mount.h                              |    2 +
 include/linux/namei.h                              |    2 +-
 include/linux/pid_namespace.h                      |    1 +
 ipc/mqueue.c                                       |    2 +-
 kernel/elfcore.c                                   |   10 +-
 kernel/pid_namespace.c                             |    8 +-
 kernel/signal.c                                    |    2 +-
 mm/memory.c                                        |    2 +-
 mm/mmap.c                                          |    4 +-
 mm/nommu.c                                         |    2 +-
 net/9p/trans_fd.c                                  |    4 +-
 net/sunrpc/rpc_pipe.c                              |   12 +-
 sound/core/sound.c                                 |   22 +-
 sound/sound_core.c                                 |   17 +-
 159 files changed, 2100 insertions(+), 2492 deletions(-)
--
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