kernel-ark/fs/xfs/linux-2.6
Nick Piggin 958f8c0e4f [XFS] remove old vmap cache
XFS's vmap batching simply defers a number (up to 64) of vunmaps, and keeps
track of them in a list. To purge the batch, it just goes through the list and
calls vunamp on each one. This is pretty poor: a global TLB flush is generally
still performed on each vunmap, with the most expensive parts of the operation
being the broadcast IPIs and locking involved in the SMP callouts, and the
locking involved in the vmap management -- none of these are avoided by just
batching up the calls. I'm actually surprised it ever made much difference.
(Now that the lazy vmap allocator is upstream, this description is not quite
right, but the vunmap batching still doesn't seem to do much)

Rip all this logic out of XFS completely. I will improve vmap performance
and scalability directly in subsequent patch.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Reviewed-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
2009-01-09 17:09:25 +11:00
..
kmem.c [XFS] kmem_free and kmem_realloc to use const void * 2008-07-28 16:58:43 +10:00
kmem.h [XFS] kmem_free and kmem_realloc to use const void * 2008-07-28 16:58:43 +10:00
mrlock.h
mutex.h
sv.h remove dead code from sv_t implementation 2008-12-04 15:39:21 +11:00
time.h
xfs_aops.c move vn_iowait / vn_iowake into xfs_aops.c 2008-12-04 15:39:24 +11:00
xfs_aops.h [XFS] Remove several unused typedefs. 2009-01-09 15:46:16 +11:00
xfs_buf.c [XFS] remove old vmap cache 2009-01-09 17:09:25 +11:00
xfs_buf.h [XFS] Remove XFS_BUF_SHUT() and friends 2008-12-22 17:52:58 +11:00
xfs_cred.h [XFS] Fix merge failures 2008-12-29 16:47:18 +11:00
xfs_dmapi_priv.h
xfs_export.c [XFS] pass XFS_IGET_BULKSTAT to xfs_iget for handle operations 2009-01-09 15:17:17 +11:00
xfs_export.h
xfs_file.c [XFS] Use the incore inode size in xfs_file_readdir() 2008-12-22 17:50:56 +11:00
xfs_fs_subr.c [XFS] fix error inversion problems with data flushing 2008-12-01 11:11:10 +11:00
xfs_fs_subr.h
xfs_globals.c [XFS] remove restricted chown parameter from xfs linux 2008-10-30 18:30:48 +11:00
xfs_globals.h CRED: Separate task security context from task_struct 2008-11-14 10:39:16 +11:00
xfs_ioctl32.c [XFS] add a FMODE flag to make XFS invisible I/O less hacky 2008-12-11 13:14:41 +11:00
xfs_ioctl32.h [XFS] fix compile on 32 bit systems 2008-12-04 13:07:29 +11:00
xfs_ioctl.c [XFS] Fix merge failures 2008-12-29 16:47:18 +11:00
xfs_ioctl.h [XFS] add a FMODE flag to make XFS invisible I/O less hacky 2008-12-11 13:14:41 +11:00
xfs_iops.c kill dead inode flags 2008-12-04 15:39:22 +11:00
xfs_iops.h [XFS] add a FMODE flag to make XFS invisible I/O less hacky 2008-12-11 13:14:41 +11:00
xfs_linux.h [XFS] remove xfs_vfs.h 2008-12-01 11:36:59 +11:00
xfs_lrw.c [XFS] Fix race in xfs_write() between direct and buffered I/O with DMAPI 2008-12-24 14:07:32 +11:00
xfs_lrw.h
xfs_stats.c [XFS] fix spurious gcc warnings 2008-12-01 11:07:37 +11:00
xfs_stats.h [XFS] add new btree statistics 2008-10-30 16:55:03 +11:00
xfs_super.c trivial: fix then -> than typos in comments and documentation 2009-01-06 11:28:06 +01:00
xfs_super.h remove unused behvavior cruft in xfs_super.h 2008-12-04 15:39:19 +11:00
xfs_sync.c [XFS] Remove unnecessary assertion 2008-12-05 14:15:49 +11:00
xfs_sync.h [XFS] mark inodes for reclaim via a tag in the inode radix tree 2008-10-30 17:37:26 +11:00
xfs_sysctl.c [XFS] remove restricted chown parameter from xfs linux 2008-10-30 18:30:48 +11:00
xfs_sysctl.h [XFS] remove restricted chown parameter from xfs linux 2008-10-30 18:30:48 +11:00
xfs_version.h
xfs_vnode.h move inode tracing out of xfs_vnode. 2008-12-04 15:39:25 +11:00
xfs_xattr.c [XFS] Remove vn_revalidate calls in xfs. 2008-07-28 16:59:39 +10:00