[GIT PULL] vfs.git

From: Al Viro
Date: Wed Dec 10 2014 - 14:13:12 EST


First pile out of several (there _definitely_ will be more). Stuff in this
one:
* unification of d_splice_alias()/d_materialize_unique()
* iov_iter rewrite
* killing a bunch of ->f_path.dentry users (and f_dentry macro).
Getting that completed will make life much simpler for unionmount/overlayfs,
since then we'll be able to limit the places sensitive to file _dentry_
to reasonably few. Which allows to have file_inode(file) pointing to
inode in a covered layer, with dentry pointing to (negative) dentry in
union one. Still not complete, but much closer now.
* crapectomy in lustre (dead code removal, mostly)
* "let's make seq_printf return nothing" preparations
* assorted cleanups and fixes
There _definitely_ will be more piles. Please, pull from
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git for-linus

Shortlog:
Al Viro (53):
new helper: is_root_inode()
move d_rcu from overlapping d_child to overlapping d_alias
lustre: switch ll_intent_file_open() to struct dentry *
ll_setxattr(): get rid of struct file on stack
lustre: opened file can't have negative dentry
lustre: use %p[dD]
lustre: use file_inode()
lustre: switch ll_release_openhandle() to struct inode *
kill ll_mknod_generic()
kill ll_mkdir_generic()
kill ll_symlink_generic()
ll_new_inode(): don't bother with name - it's always &dentry->d_name
kill ll_rmdir_generic()
kill ll_unlink_generic()
kill ll_rename_generic()
ll_get_child_fid(): callers already have the child
kill ll_link_generic()
lustre: get rid of duplicate mountpoint checks
lustre: use is_root_inode()
deal with deadlock in d_walk()
gfs2: bugger off early if O_CREAT open finds a directory
gfs2_create_inode(): don't bother with d_splice_alias()
gfs2_atomic_open(): simplify the use of finish_no_open()
d_add_ci() should just accept a hashed exact match if it finds one
merge d_materialise_unique() into d_splice_alias()
switch d_materialise_unique() users to d_splice_alias()
assorted conversions to %p[dD]
nfsd/nfsctl.c: new helper
btrfs: get rid of f_dentry use
cifs: get rid of ->f_path.dentry->d_sb uses, add a new helper
afs_fsync: don't bother with ->f_path.dentry
rpc_pipefs.c: get rid of f_dentry
nfsd: get rid of ->f_dentry
procfs: get rid of ->f_dentry
lockd: get rid of ->f_path.dentry->d_sb
kill f_dentry uses
ncpfs: use file_inode()
nfsd_vfs_write(): use file_inode()
new helper: audit_file()
kill f_dentry macro
iov_iter.c: macros for iterating over iov_iter
iov_iter.c: iterate_and_advance
iov_iter.c: convert iov_iter_npages() to iterate_all_kinds
iov_iter.c: convert iov_iter_get_pages() to iterate_all_kinds
iov_iter.c: convert iov_iter_get_pages_alloc() to iterate_all_kinds
iov_iter.c: convert iov_iter_zero() to iterate_and_advance
iov_iter.c: get rid of bvec_copy_page_{to,from}_iter()
iov_iter.c: convert copy_from_iter() to iterate_and_advance
iov_iter.c: convert copy_to_iter() to iterate_and_advance
iov_iter.c: handle ITER_KVEC directly
csum_and_copy_..._iter()
new helper: iov_iter_kvec()
copy_from_iter_nocache()

Joe Perches (6):
seq_file: Rename seq_overflow() to seq_has_overflowed() and make public
netfilter: Convert print_tuple functions to return void
dlm: Remove seq_printf() return checks and use seq_has_overflowed()
dlm: Use seq_puts() instead of seq_printf() for constant strings
fs: Convert show_fdinfo functions to void
debugfs: Have debugfs_print_regs32() return void

Miklos Szeredi (1):
vfs: make first argument of dir_context.actor typed

Mikulas Patocka (1):
dcache: fix kmemcheck warning in switch_names

Steven Rostedt (Red Hat) (2):
netfilter: Remove return values for print_conntrack callbacks
netfilter: Remove checks of seq_printf() return values

Diffstat:
Documentation/filesystems/debugfs.txt | 2 +-
Documentation/filesystems/nfs/Exporting | 23 +-
Documentation/filesystems/porting | 8 +
Documentation/filesystems/seq_file.txt | 22 +-
Documentation/filesystems/vfs.txt | 2 +-
arch/alpha/kernel/osf_sys.c | 7 +-
arch/parisc/hpux/fs.c | 7 +-
arch/powerpc/oprofile/cell/spu_task_sync.c | 10 +-
arch/powerpc/platforms/cell/spufs/inode.c | 2 +-
arch/s390/hypfs/hypfs_dbfs.c | 3 +-
arch/x86/ia32/ia32_aout.c | 8 +-
drivers/block/drbd/drbd_debugfs.c | 6 +-
drivers/gpu/drm/armada/armada_gem.c | 2 +-
drivers/media/pci/zoran/zoran_procfs.c | 4 +-
drivers/misc/genwqe/card_dev.c | 2 +-
drivers/net/tun.c | 4 +-
drivers/s390/char/hmcdrv_dev.c | 16 +-
drivers/scsi/lpfc/lpfc_debugfs.c | 8 +-
drivers/staging/lustre/lustre/libcfs/tracefile.c | 4 +-
drivers/staging/lustre/lustre/llite/dcache.c | 21 +-
drivers/staging/lustre/lustre/llite/dir.c | 9 +-
drivers/staging/lustre/lustre/llite/file.c | 158 ++-
.../staging/lustre/lustre/llite/llite_internal.h | 10 +-
drivers/staging/lustre/lustre/llite/llite_lib.c | 8 +-
drivers/staging/lustre/lustre/llite/llite_mmap.c | 12 +-
drivers/staging/lustre/lustre/llite/llite_nfs.c | 8 +-
drivers/staging/lustre/lustre/llite/lloop.c | 7 +-
drivers/staging/lustre/lustre/llite/namei.c | 388 +++----
drivers/staging/lustre/lustre/llite/statahead.c | 33 +-
drivers/staging/lustre/lustre/llite/vvp_io.c | 4 +-
drivers/staging/lustre/lustre/llite/xattr.c | 9 +-
fs/9p/vfs_inode.c | 2 +-
fs/9p/vfs_inode_dotl.c | 4 +-
fs/affs/amigaffs.c | 2 +-
fs/affs/inode.c | 4 +-
fs/affs/namei.c | 40 +-
fs/afs/dir.c | 80 +-
fs/afs/inode.c | 4 +-
fs/afs/mntpt.c | 22 +-
fs/afs/write.c | 9 +-
fs/autofs4/expire.c | 42 +-
fs/autofs4/root.c | 25 +-
fs/befs/linuxvfs.c | 16 +-
fs/binfmt_aout.c | 8 +-
fs/btrfs/inode.c | 2 +-
fs/btrfs/ioctl.c | 2 +-
fs/cachefiles/namei.c | 21 +-
fs/cachefiles/xattr.c | 15 +-
fs/ceph/debugfs.c | 14 +-
fs/ceph/dir.c | 56 +-
fs/ceph/file.c | 6 +-
fs/ceph/inode.c | 18 +-
fs/cifs/cifsfs.c | 3 +-
fs/cifs/cifsglob.h | 6 +
fs/cifs/file.c | 12 +-
fs/cifs/inode.c | 2 +-
fs/cifs/readdir.c | 10 +-
fs/coda/cache.c | 2 +-
fs/coda/coda_linux.c | 6 -
fs/coda/coda_linux.h | 1 -
fs/coda/dir.c | 12 +-
fs/compat.c | 21 +-
fs/configfs/dir.c | 2 +-
fs/dcache.c | 271 ++---
fs/debugfs/file.c | 15 +-
fs/debugfs/inode.c | 2 +-
fs/dlm/debug_fs.c | 263 +++--
fs/ecryptfs/crypto.c | 2 +-
fs/ecryptfs/file.c | 6 +-
fs/ecryptfs/mmap.c | 2 +-
fs/efivarfs/file.c | 4 +-
fs/eventfd.c | 9 +-
fs/eventpoll.c | 13 +-
fs/exportfs/expfs.c | 7 +-
fs/fat/dir.c | 5 +-
fs/fuse/dir.c | 4 +-
fs/fuse/file.c | 2 +-
fs/gfs2/export.c | 8 +-
fs/gfs2/inode.c | 26 +-
fs/hppfs/hppfs.c | 5 +-
fs/jfs/namei.c | 18 +-
fs/kernfs/dir.c | 2 +-
fs/libfs.c | 12 +-
fs/lockd/svcsubs.c | 2 +-
fs/ncpfs/dir.c | 12 +-
fs/ncpfs/file.c | 14 +-
fs/ncpfs/mmap.c | 4 +-
fs/ncpfs/ncplib_kernel.h | 4 +-
fs/nfs/blocklayout/rpc_pipefs.c | 2 +-
fs/nfs/dir.c | 6 +-
fs/nfs/getroot.c | 4 +-
fs/nfsd/nfs4recover.c | 7 +-
fs/nfsd/nfs4xdr.c | 2 +-
fs/nfsd/nfsctl.c | 37 +-
fs/nfsd/vfs.c | 16 +-
fs/nfsd/vfs.h | 4 +-
fs/notify/fdinfo.c | 78 +-
fs/notify/fdinfo.h | 4 +-
fs/notify/fsnotify.c | 4 +-
fs/ntfs/namei.c | 4 +-
fs/ocfs2/dcache.c | 20 +-
fs/ocfs2/dir.c | 8 +-
fs/ocfs2/dlmfs/dlmfs.c | 4 +-
fs/ocfs2/dlmglue.c | 3 +-
fs/ocfs2/journal.c | 8 +-
fs/open.c | 4 +-
fs/overlayfs/readdir.c | 8 +-
fs/proc/base.c | 4 +-
fs/proc/fd.c | 3 +-
fs/readdir.c | 21 +-
fs/reiserfs/xattr.c | 21 +-
fs/seq_file.c | 15 +-
fs/signalfd.c | 4 +-
fs/sync.c | 2 +-
fs/timerfd.c | 27 +-
fs/xattr.c | 16 +-
include/linux/audit.h | 9 +
include/linux/cgroup.h | 4 +-
include/linux/dcache.h | 9 +-
include/linux/debugfs.h | 7 +-
include/linux/fs.h | 13 +-
include/linux/seq_file.h | 15 +
include/linux/uio.h | 6 +
include/net/netfilter/nf_conntrack_core.h | 2 +-
include/net/netfilter/nf_conntrack_l3proto.h | 4 +-
include/net/netfilter/nf_conntrack_l4proto.h | 6 +-
ipc/mqueue.c | 4 +-
kernel/auditsc.c | 7 +-
kernel/events/core.c | 2 +-
kernel/taskstats.c | 2 +-
kernel/trace/trace.c | 4 +-
kernel/trace/trace_events.c | 2 +-
mm/iov_iter.c | 1058 ++++++++------------
mm/memcontrol.c | 4 +-
net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c | 6 +-
.../netfilter/nf_conntrack_l3proto_ipv4_compat.c | 53 +-
net/ipv4/netfilter/nf_conntrack_proto_icmp.c | 10 +-
net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c | 6 +-
net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c | 10 +-
net/netfilter/nf_conntrack_l3proto_generic.c | 5 +-
net/netfilter/nf_conntrack_proto_dccp.c | 14 +-
net/netfilter/nf_conntrack_proto_generic.c | 5 +-
net/netfilter/nf_conntrack_proto_gre.c | 18 +-
net/netfilter/nf_conntrack_proto_sctp.c | 14 +-
net/netfilter/nf_conntrack_proto_tcp.c | 14 +-
net/netfilter/nf_conntrack_proto_udp.c | 10 +-
net/netfilter/nf_conntrack_proto_udplite.c | 10 +-
net/netfilter/nf_conntrack_standalone.c | 77 +-
net/netfilter/nf_log.c | 30 +-
net/netfilter/nfnetlink_queue_core.c | 13 +-
net/netfilter/x_tables.c | 19 +-
net/netfilter/xt_hashlimit.c | 36 +-
security/commoncap.c | 2 +-
security/integrity/ima/ima_api.c | 4 +-
security/integrity/ima/ima_appraise.c | 4 +-
security/integrity/ima/ima_template_lib.c | 2 +-
security/selinux/selinuxfs.c | 6 +-
security/smack/smack_lsm.c | 8 +-
158 files changed, 1675 insertions(+), 2183 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/