diff options
author | Christoph Hellwig <hch@infradead.org> | 2010-11-06 11:43:08 +0000 |
---|---|---|
committer | Alex Elder <aelder@sgi.com> | 2010-11-10 12:00:48 -0600 |
commit | c6f6cd0608b1826ee1797cf57a808416e4bdb806 (patch) | |
tree | 4c82ec811ef359f71c83f2a68c46498f0b59618b /fs | |
parent | 5d2bf8a55e03b0e59ed5a4ac2ff7f9ee3ba7e40d (diff) | |
download | kernel_samsung_tuna-c6f6cd0608b1826ee1797cf57a808416e4bdb806.zip kernel_samsung_tuna-c6f6cd0608b1826ee1797cf57a808416e4bdb806.tar.gz kernel_samsung_tuna-c6f6cd0608b1826ee1797cf57a808416e4bdb806.tar.bz2 |
xfs: use hlist_add_fake
XFS does not need it's inodes to actuall be hashed in the VFS inode
cache, but we require the inode to be marked hashed for the
writeback code to work.
Insted of using insert_inode_hash, which requires a second
inode_lock roundtrip after the partial merge of the inode
scalability patches in 2.6.37-rc simply use the new hlist_add_fake
helper to mark it hashed without requiring a lock or touching a
global cache line.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Alex Elder <aelder@sgi.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_iops.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/xfs/linux-2.6/xfs_iops.c b/fs/xfs/linux-2.6/xfs_iops.c index 96107ef..94d5fd6 100644 --- a/fs/xfs/linux-2.6/xfs_iops.c +++ b/fs/xfs/linux-2.6/xfs_iops.c @@ -762,7 +762,8 @@ xfs_setup_inode( inode->i_state = I_NEW; inode_sb_list_add(inode); - insert_inode_hash(inode); + /* make the inode look hashed for the writeback code */ + hlist_add_fake(&inode->i_hash); inode->i_mode = ip->i_d.di_mode; inode->i_nlink = ip->i_d.di_nlink; |