[PATCH 3/3] xfs: use hlist_add_fake

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxx>

Index: linux-2.6/fs/xfs/linux-2.6/xfs_iops.c
===================================================================
--- linux-2.6.orig/fs/xfs/linux-2.6/xfs_iops.c	2010-11-05 19:17:18.511013308 +0100
+++ linux-2.6/fs/xfs/linux-2.6/xfs_iops.c	2010-11-05 19:23:31.772029658 +0100
@@ -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;

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs


[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux