[git pull] vfs pile, part 2

From: Al Viro
Date: Fri May 28 2010 - 11:51:13 EST


Mostly assorted fixes + fsync API change + infrastructure and
simple conversions of "new truncate scheme" series. BTW, long-standing
abuse of file refcounting by aio.c is gone; now we have a new helper
(fput_atomic(file)) suitable for calling in atomic contexts. It drops
the reference if it's not the last one (i.e. if nothing potentially
blocking needs to be done) and tells the caller whether it had succeeded
or not (in the latter case you still need to do normal fput() outside of
atomic context, of course).

Please, pull from
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6.git/ for-linus

Shortlog:
Al Viro (5):
Revert "anon_inode: set S_IFREG on the anon_inode"
get rid of the magic around f_count in aio
Fix racy use of anon_inode_getfd() in perf_event.c
fix fs/sysv s_dirt handling
remove detritus left by "mm: make read_cache_page synchronous"

Christoph Hellwig (2):
drop unused dentry argument to ->fsync
rename the generic fsync implementations

Erik van der Kouwe (1):
fs/minix: bugfix, number of indirect block ptrs per block depends on block size

Julia Lawall (1):
fs: Add missing mutex_unlock

Neil Brown (1):
VFS: fix recent breakage of FS_REVAL_DOT

Nick Piggin (1):
fs: convert simple fs to new truncate

Randy Dunlap (1):
fs/super: fix kernel-doc warning

npiggin@xxxxxxx (5):
fs: introduce new truncate sequence
kill spurious reference to vmtruncate
tmpfs: convert to use the new truncate convention
ext2: convert to use the new truncate convention.
fat: convert to use the new truncate convention.

Diffstat:
Documentation/filesystems/Locking | 2 +-
Documentation/filesystems/vfs.txt | 9 ++-
arch/powerpc/platforms/cell/spufs/file.c | 3 +-
arch/powerpc/platforms/cell/spufs/inode.c | 2 +-
drivers/char/ps3flash.c | 3 +-
drivers/mtd/ubi/cdev.c | 3 +-
drivers/staging/pohmelfs/inode.c | 2 +-
drivers/usb/gadget/printer.c | 2 +-
drivers/video/fb_defio.c | 2 +-
fs/9p/vfs_file.c | 6 +-
fs/adfs/dir.c | 2 +-
fs/adfs/file.c | 2 +-
fs/adfs/inode.c | 3 +-
fs/affs/affs.h | 2 +-
fs/affs/file.c | 4 +-
fs/afs/internal.h | 2 +-
fs/afs/write.c | 3 +-
fs/aio.c | 6 +-
fs/anon_inodes.c | 2 +-
fs/attr.c | 50 ++++++++--
fs/bad_inode.c | 3 +-
fs/bfs/dir.c | 2 +-
fs/block_dev.c | 16 +--
fs/btrfs/ctree.h | 2 +-
fs/btrfs/file.c | 3 +-
fs/buffer.c | 123 ++++++++++++++++++-----
fs/ceph/caps.c | 4 +-
fs/ceph/dir.c | 5 +-
fs/ceph/super.h | 2 +-
fs/cifs/cifsfs.h | 2 +-
fs/cifs/file.c | 4 +-
fs/coda/coda_int.h | 3 +-
fs/coda/file.c | 4 +-
fs/configfs/inode.c | 9 +--
fs/direct-io.c | 61 ++++++++----
fs/ecryptfs/file.c | 2 +-
fs/ecryptfs/inode.c | 4 +-
fs/exofs/file.c | 7 +-
fs/ext2/ext2.h | 3 +-
fs/ext2/file.c | 7 +-
fs/ext2/inode.c | 153 ++++++++++++++++++++++-------
fs/ext3/fsync.c | 4 +-
fs/ext4/ext4.h | 2 +-
fs/ext4/fsync.c | 8 +-
fs/fat/fat.h | 6 +-
fs/fat/file.c | 40 ++++++--
fs/fat/inode.c | 35 ++++++-
fs/file_table.c | 21 ++--
fs/fuse/dir.c | 5 +-
fs/fuse/file.c | 9 +-
fs/fuse/fuse_i.h | 3 +-
fs/gfs2/aops.c | 8 ++-
fs/gfs2/file.c | 4 +-
fs/gfs2/ops_inode.c | 5 +-
fs/hostfs/hostfs_kern.c | 4 +-
fs/hpfs/file.c | 4 +-
fs/hpfs/hpfs_fn.h | 2 +-
fs/hppfs/hppfs.c | 2 +-
fs/hugetlbfs/inode.c | 2 +-
fs/jffs2/file.c | 4 +-
fs/jffs2/fs.c | 4 +-
fs/jffs2/os-linux.h | 2 +-
fs/jfs/file.c | 4 +-
fs/jfs/jfs_inode.h | 2 +-
fs/libfs.c | 108 ++++++++++++++++++--
fs/logfs/file.c | 4 +-
fs/logfs/logfs.h | 2 +-
fs/minix/dir.c | 7 +-
fs/minix/file.c | 2 +-
fs/minix/itree_v2.c | 27 +++---
fs/namei.c | 2 +-
fs/ncpfs/file.c | 2 +-
fs/nfs/dir.c | 6 +-
fs/nfs/file.c | 5 +-
fs/nilfs2/file.c | 4 +-
fs/nilfs2/nilfs.h | 2 +-
fs/ntfs/dir.c | 5 +-
fs/ntfs/file.c | 9 +--
fs/ocfs2/file.c | 15 ++-
fs/omfs/file.c | 2 +-
fs/pipe.c | 13 ++-
fs/qnx4/dir.c | 2 +-
fs/ramfs/file-mmu.c | 3 +-
fs/ramfs/file-nommu.c | 9 +-
fs/reiserfs/dir.c | 8 +-
fs/reiserfs/file.c | 5 +-
fs/smbfs/file.c | 3 +-
fs/smbfs/inode.c | 2 +-
fs/super.c | 4 +-
fs/sync.c | 8 +-
fs/sysfs/inode.c | 8 +-
fs/sysv/dir.c | 2 +-
fs/sysv/file.c | 2 +-
fs/sysv/inode.c | 1 +
fs/ubifs/file.c | 17 ++--
fs/ubifs/ubifs.h | 4 +-
fs/udf/dir.c | 2 +-
fs/udf/file.c | 2 +-
fs/ufs/dir.c | 2 +-
fs/ufs/file.c | 2 +-
fs/ufs/truncate.c | 10 +-
fs/xfs/linux-2.6/xfs_file.c | 10 +-
include/linux/buffer_head.h | 11 ++-
include/linux/ext3_fs.h | 2 +-
include/linux/fb.h | 5 +-
include/linux/file.h | 1 -
include/linux/fs.h | 36 ++++++-
include/trace/events/ext4.h | 6 +-
ipc/shm.c | 11 +--
kernel/perf_event.c | 40 ++++----
mm/shmem.c | 45 +++++----
mm/truncate.c | 10 +-
112 files changed, 782 insertions(+), 415 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/