struct hugetlbfs_sb_info *sbinfo = HUGETLBFS_SB(super_block); 
static void hugetlbfs_forget_inode(struct inode *inode){	struct super_block *super_block = inode->i_sb;	struct hugetlbfs_sb_info *sbinfo = HUGETLBFS_SB(super_block);	if (hlist_unhashed(&inode->i_hash))		goto out_truncate;	if (!(inode->i_state & (I_DIRTY|I_LOCK))) {		list_del(&inode->i_list);		list_add(&inode->i_list, &inode_unused);	}	inodes_stat.nr_unused++;	if (!super_block || (super_block->s_flags & MS_ACTIVE)) {		spin_unlock(&inode_lock);		return;	}	/* write_inode_now() ? */	inodes_stat.nr_unused--;	hlist_del_init(&inode->i_hash);out_truncate:	list_del_init(&inode->i_list);	list_del_init(&inode->i_sb_list);	inode->i_state |= I_FREEING;	inodes_stat.nr_inodes--;	spin_unlock(&inode_lock);	if (inode->i_data.nrpages)		truncate_hugepages(&inode->i_data, 0);	if (sbinfo->free_inodes >= 0) {		spin_lock(&sbinfo->stat_lock);		sbinfo->free_inodes++;		spin_unlock(&sbinfo->stat_lock);	}	clear_inode(inode);	destroy_inode(inode);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/96527980d4cb8f65fe49efdbc4ab92c0837d42f6/inode.c/buggy/fs/hugetlbfs/inode.c