diff options
author | Dave Chinner <dchinner@redhat.com> | 2010-07-20 17:53:25 +1000 |
---|---|---|
committer | Alex Elder <aelder@sgi.com> | 2010-07-26 13:16:48 -0500 |
commit | 2f11feabb19748c0ffa2eb82d438e8a91b9f6ea0 (patch) | |
tree | 02564de802ac344b7c2048ed10438443356bfce1 /fs/xfs/xfs_inode.h | |
parent | ec53d1dbb3ca960e7b552397613358ba1dbd12bd (diff) | |
download | kernel-common-2f11feabb19748c0ffa2eb82d438e8a91b9f6ea0.tar.gz kernel-common-2f11feabb19748c0ffa2eb82d438e8a91b9f6ea0.tar.bz2 kernel-common-2f11feabb19748c0ffa2eb82d438e8a91b9f6ea0.zip |
xfs: simplify and remove xfs_ireclaim
xfs_ireclaim has to get and put te pag structure because it is only
called with the inode to reclaim. The one caller of this function
already has a reference on the pag and a pointer to is, so move the
radix tree delete to the caller and remove xfs_ireclaim completely.
This avoids a xfs_perag_get/put on every inode being reclaimed.
The overhead was noticed in a bug report at:
https://bugzilla.kernel.org/show_bug.cgi?id=16348
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Alex Elder <aelder@sgi.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs/xfs/xfs_inode.h')
-rw-r--r-- | fs/xfs/xfs_inode.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xfs/xfs_inode.h b/fs/xfs/xfs_inode.h index eb41559ea8cd..0898c5417d12 100644 --- a/fs/xfs/xfs_inode.h +++ b/fs/xfs/xfs_inode.h @@ -450,7 +450,7 @@ void xfs_ilock_demote(xfs_inode_t *, uint); int xfs_isilocked(xfs_inode_t *, uint); uint xfs_ilock_map_shared(xfs_inode_t *); void xfs_iunlock_map_shared(xfs_inode_t *, uint); -void xfs_ireclaim(xfs_inode_t *); +void xfs_inode_free(struct xfs_inode *ip); /* * xfs_inode.c prototypes. |