*__insert_inode_hash - hash an inode
*@inode: unhashed inode
*@hashval: unsigned long value used to locate this object in the
*inode_hashtable.
*
*Add an inode to the inode hash for this superblock.
*/
void __insert_inode_hash(struct inode *inode, unsigned long hashval)
{
struct hlist_head *b = inode_hashtable + hash(inode->i_sb, hashval);
spin_lock(&inode_hash_lock);
spin_lock(&inode->i_lock);
hlist_add_head(&inode->i_hash, b);spin_unlock(&inode->i_lock);
spin_unlock(&inode_hash_lock);
}
EXPORT_SYMBOL(__insert_inode_hash);
/** *__remove_inode_hash - remove an inode from the hash *@inode: inode to unhash * *Remove an inode from the superblock. */void__remove_inode_hash(struct inode *inode){spin_lock(&inode_hash_lock);spin_lock(&inode->i_lock);hlist_del_init(&inode->i_hash);spin_unlock(&inode->i_lock);spin_unlock(&inode_hash_lock);}EXPORT_SYMBOL(__remove_inode_hash);